麻将开发——cc.ToggleGroup功能分享

上传发帖求合作,有很多朋友加我为好友,首先感谢,但是真正合作感觉契机不打,有很多加了好友,分配任务后,开始还交流后面直接把我删除了,呵呵,特别感谢一位朋友把他上线的麻将作品UI,发给我了。我也套上用了,确实比较好看些,言归正传!
这里分享对ToggleGroup的控件的操作,
理由:
1,我开发的麻将是通过服务器数据来生产,创建麻将参数的ui,在麻将多种玩法的环境下,每种玩法又有各种依赖关系,
2,官方没有现成的对ToggleGroup,的直接操作api,这里我自己写了个简单的,对大家分享!
应用场景;
麻将创建有复杂的参数,而我的是动态添加的,
这里复杂参数有3个,A:“天地胡(点炮)” B:“呼叫转移(转根)” C:呼叫转移(转炮)“”
这里的依赖关系是,B与C,只有一个能选,或者一个都不选,C或B被选了,那A必选被选,
这种会呈现什么效果了,选择,B或C,A被默认选择,选择,B,那C会被取消,取消A,那C和B 被取消,具体效果如下:
这里就有对ToggleGroup的操作
具体如下
`apiToggleGroup:function(toggleG,mode){// mode //0: 查询是否有状态,1: 设置 默认 状态 ,2: 设置 取消 状态
var self=this;
if(toggleG){
var c =toggleG.getComponent(cc.ToggleGroup)._toggleItems;

         switch (mode){
             case 0:
                var cstate=false;
                 for(var ci in c){
                     if(c[ci].isChecked){
                         cstate=true;
                        break;
                    }       
                }
                return cstate;
            case 1:
               for(var ci in c){
                   if(ci==0){
                        c[ci].isChecked=true;
                     //  toggleG.getComponent(cc.ToggleGroup)._toggleItems[0]=true; 
                       cc.info(c[0].isChecked);
                   }else{
                        c[ci].isChecked=false;
                   }
                         
                } 
                return true;
            case 2:
                for(var ci in c){
                    c[ci].isChecked=false;      
                } 
                return true;
         }
    }
    return false;
}`

apiToggleGroup:function(toggleG,mode){// toggleGmode,是含有ToggleGroup的node, //mode:0: 查询是否有有被选状态,1: 设置 一个被选 状态 ,2: 设置 ToggleGroup下面所有的Toggle为不被选中状态

有朋友交流请加qq:646004266

技术贴必须帮顶:slightly_smiling: