簡體   English   中英

綁定到NSCollectionViewItem會導致Xcode崩潰

[英]Binding to NSCollectionViewItem crashes Xcode

使用XCode 4.1每當我嘗試使用CollectionView時,我都會遇到崩潰。

這些是我正在做的步驟:

  1. 從新項目中,編輯MainMenu.nib文件。
  2. 將NSCollectionView添加到窗口,該窗口還添加了Collection View Item和新視圖
  3. 像NSTextField一樣添加一個控件
  4. 選擇控件,然后將檢查器切換到綁定窗格。
  5. 嘗試將某些內容綁定到Collection View Item。 在下拉菜單中選擇“收集視圖項”后,將出現“內部錯誤”對話框。 嘗試從此對話框繼續使綁定窗格消失,直到您重新啟動XCode

這是否會發生在其他人身上,還是只是我遇到過的事情? 有沒有辦法解決它,以允許我綁定到集合視圖項(我希望最終綁定到representObject值)在XCode或代碼中。

我試圖創建一個自定義的NSCollectionViewItem子類,它使用一個單獨的nib文件,並將其設置為NSCollectionView的itemPrototype,但事情卻非常錯誤。

我發現將集合視圖項視圖拆分為自己的XIB,然后重新連接連接以便集合視圖項原型加載新的XIB將允許您在界面構建器中創建綁定而不會崩潰。 我按照這些步驟......

  1. 從默認的xib中刪除集合視圖項視圖。
  2. 創建一個新視圖和從NSCollectionViewItem繼承的XIB。
  3. 在新視圖中創建集合視圖項。
  4. 將字段綁定到新視圖的文件所有者。
  5. 回到集合視圖xib,更新集合視圖項的屬性以加載新xib的bin名稱。

我不確定它比編程方式更快,但它確實允許您在不編寫代碼的情況下管理綁定。 我現在有一些這樣的應用程序。

我找到了一個臨時工作:

選擇“Collection View Item”並在“Attributes Inspector”→“View Controller”設置下,將“Nib Name”設置為“MainMenu”。

完成此操作后,它不會崩潰,您可以設置綁定。 在構建應用程序時,請務必清除“筆尖名稱”設置。

是的,即使在Interface Builder 3上,我也可以確認這個錯誤。

唯一的解決方法是以編程方式進行綁定:

[textField bind:@"value" toObject:collectionViewItem withKeyPath:@"representedObject.foo" options:nil];

暫無
暫無

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

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