簡體   English   中英

當整數等於OSX中的某個特定值時,如何綁定控件中的隱藏屬性?

[英]How to bind hidden property in a control when a integer equals some certain value in OSX?

我有一個有3個單元格的RadioGroup。 當無線電組中的選定索引為1時,我想隱藏一些控件。這是:

[someControl setHidden: radioGroup.selectedIndex == 1];

當無線電組選擇改變時,我會有很多控件顯示/隱藏。 有些人可能會在所選索引等於0時顯示,有些人可能會在等於2時顯示。

我希望它通過綁定來完成,而不是使用outlet連接每個控件引用。

如何實現?

至少有兩種方法可以做到這一點,因為綁定hidden需要布爾值:

  • 創建一個BOOL類型的屬性,並根據您的值比較返回YES或NO,然后在您的類中使用KVO觀察原始值並在KVO觀察者內部設置Boolean屬性(這是確保對象為在合適的時間更新)

  • 單獨使用綁定,但創建一個Value Transformer,根據需要將所需的每個值轉換為BOOL,以便正確解釋。 現有的值轉換器將YES更改為NO,反之亦然,但對於其他值轉換,您必須自己創建這些轉換器,並且沒有好的方法可以在xib文件中對它們進行參數化。

第一種解決方案可能更容易。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM