2014-10-10 150 views
0

我有兩個UIToggle對象,所以當我點擊時,例如,切換1使其自身啓用,切換2變爲禁用狀態。但我正試圖在腳本中切換它們。NGUI UIToggle如何切換/取消激活一個

我得到的UIToggle 1這樣的:

UIToggle toggleOn = ToogleParen.transform.FindChild("ButtonOn").GetComponent<UIToggle>(); 

並激活它這樣做:

toggleOn.value = true; 

當我試圖關閉它的問題就變成了:

toggleOn.value = false; <--- does nothing, the toggle button does not deactivate!! 

不任何人都知道如何以編程方式切換兩個UIToggle對象?

謝謝!

+0

您是否將其用作單選按鈕?如果是這樣,NGUI會嘗試確保啓用組中的一個選項(這樣做可能會忽略將「value」設置爲false的嘗試)。您可以通過將該組設置爲零或設置「optionCanBeNone」來繞過此操作。 – rutter 2014-10-10 18:53:33

+0

謝謝你的回答! optionCanBeNone不允許使用錯誤的值,所以唯一的方法是將組置零以消除單選按鈕的行爲。非常感謝! :) – Kane 2014-10-14 01:21:22

+0

但是,如果您確實希望它們表現爲單選按鈕,那麼您只需設置哪個切換開關爲真,剩下的就會更新。 – Dover8 2015-02-16 10:23:32

回答

0

您將不得不刷新控件,以便NGUI在屏幕上重新繪製它。就像你在添加特定項目後必須添加網格一樣。通過你所描述的,我認爲你想實現類似於單選按鈕(一次只能有一個選擇)的東西。如果是的話,那麼你應該使用UICheckbox,因爲NGUI提供了使用複選框作爲單選按鈕的功能,在這種情況下,您不必取消選中代碼中的其他複選框。