簡體   English   中英

使用Interface Builder構建的自定義UIView可通過Interface Builder訪問/定位

[英]Custom UIView built with Interface Builder accessible/positionable via Interface Builder

這不應該是這種混亂。 我有一個自定義的UIView,上面有一堆控件。 UILabels,按鈕等我使用Interface Builder創建了這個Nib。 我希望能夠使用界面構建器將此自定義uiview放在另一個UIView上。

如何將我的UIView自定義類鏈接到nib? initWithCoder被調用,但我希望這個類從nib加載。

謝謝

為此,您必須為Interface Builder創建一個使用自定義控件類的插件。 只要創建並安裝插件,就可以通過拖放操作將視圖實例添加到Interface Builder中的另一個窗口或視圖中。 要了解有關創建IB插件的信息,請參閱“ 界面生成器插件編程指南”和Aaron Hillegass的書“ Cocoa Programming for Mac OS X”中創建自己的IB調色板控件一章。

以下是對類似問題的接受答案的原始作者的鏈接。

如果您希望自定義視圖在您正在使用它的筆尖中正確繪制,則只需要創建一個插件。 您可以創建自定義控件,然后將其顯示為空白矩形,直到在運行期間實例化為止。

如何在Interface Builder中獲取視圖以在另一個筆尖中加載自定義視圖?

您可以使用Interface Builder插入UIViewController對象,然后設置UIViewController的“Nib名稱”屬性。 我不知道這是否會弄亂你的模特,但我認為這是你想要做的事情的唯一方法。

在IB中打開Identity Inspector工具(Command-4),然后選擇自定義視圖,在類彈出窗口中選擇自定義類的名稱而不是通用UIView。 您可能還想將它連接到ivar。 在ViewController中,聲明一個自定義類的實例,前面有一個IBOutlet 然后返回並調出Connections Inspector並將視圖連接到ivar,方法是從自定義視圖的引用插座單擊拖動到File的所有者(應該是ViewController的一個實例)並選擇ivar名稱。

加載NIB時,應該創建該類型的對象並將其連接到該變量。

暫無
暫無

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

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