单一选择按钮(当Menu上有多个Item的时候,只允许一个Item是选中
发布时间:2020-12-13 22:18:07 所属栏目:百科 来源:网络整理
导读:很多时候,开发着会遇到这种需求,虽然Cocos的库中带了该功能控件,但是我始终觉得那个是不好用的,于是我自己重写了一个只允许单一选择的Menu类,它和Menu是平级的,大部分的代码是一样的,只是在onTouchBegin方法中做了少许修改。 修改如下: bool ZYMenuO
很多时候,开发着会遇到这种需求,虽然Cocos的库中带了该功能控件,但是我始终觉得那个是不好用的,于是我自己重写了一个只允许单一选择的Menu类,它和Menu是平级的,大部分的代码是一样的,只是在onTouchBegin方法中做了少许修改。
修改如下:
bool ZYMenuOL::onTouchBegan(Touch* touch,Event* event) {MenuItem *tempItem = getItemForTouch(touch);//该方法还是和Menu中的方法是一样的 if (_selectItem && tempItem) { _selectItem->unselected(); _selectItem = tempItem; _selectItem->selected(); } else if (tempItem) { _selectItem = tempItem; _selectItem->selected(); } return true; } 其实还有大部分人会遇到滑动层上实现类似的功能,所以只需要将所有的Item添加到同一个Menu上就可以了(这个问题容易忽略)。 希望对读者有帮助。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |