cocoStudio: Button三種狀態切換
阿新 • • 發佈:2019-01-22
我們在使用cocoStudio工具時,按鈕控制元件Button對應的資源有三種狀態, 我們可以分別針對三種狀態設定不同的圖片。然後在程式中通過方法顯示 為不同的狀態。 1、初始狀態:Normal狀態 bool Widget::init() { if (CCNode::init()) { setBright(true); } return false; } 2、 /* Button切換到Disable狀態(禁止狀態),_bright預設為真, 可以呼叫setBright(false)把Button切換到Disable狀態。 */ void Widget::setBright(bool bright) { _bright = bright; if (_bright) { _brightStyle = BRIGHT_NONE; setBrightStyle(BRIGHT_NORMAL); } else { onPressStateChangedToDisabled(); } } 3、 --切換到Pressed狀態,即按下狀態 void Widget::setFocused(bool fucos) { if (fucos == _focus) { return; } _focus = fucos; if (_bright) //預設為true { if (_focus) { //如果為true,則呼叫setBrightStyle函式,最終呼叫 //onPressStateChangedToPressed方法切換到Pressed狀態。 setBrightStyle(BRIGHT_HIGHLIGHT); } else { setBrightStyle(BRIGHT_NORMAL); } } else { //如果_bright為false,則直接切換到Disabled狀態 onPressStateChangedToDisabled(); } } void Widget::setBrightStyle(BrightStyle style) { if (_brightStyle == style) { return; } _brightStyle = style; switch (_brightStyle) { case BRIGHT_NORMAL: onPressStateChangedToNormal(); break; case BRIGHT_HIGHLIGHT: onPressStateChangedToPressed(); break; default: break; } }