簡體   English   中英

如何將一個IBOutlet連接到容器視圖控制器中的表視圖控制器

[英]How can I connect one IBOutlet to an tableview controller in an container view controller

在此處輸入圖片說明

我已經使用Storyboard設計了我的應用,我有一個View控制器,並且我需要插入一個靜態表View Controller(靜態表View Controller不能插入到View Controller中)。 因此,我拖放了一個容器視圖控制器,並嵌入了一個表視圖控制器。

現在,我在viewcontroller.h中聲明了一個IBOutlet,如下所示:

@property (nonatomic,strong) IBOutlet UITableView *infoTableView;

如何在連接檢查器中將infoTableView連接到實際的表視圖?

如果您是將ItemEditorViewController中的IBOutlet連接到表視圖控制器中的表視圖,則不能這樣做。 無法將一個控制器中的插座連接到另一控制器中的對象。 如果需要在父控制器中獲取對該表視圖的引用,則需要執行以下代碼:

在ItemEditorViewController.h中

@property (nonatomic,strong) UITableView *infoTableView;

在ItemEditorViewController.m中(可能在viewDidLoad中)

self.infoTableView = [self.childViewControllers[0] tableView];

這並不是您要找的答案,但是請不要做這種怪異的事情。 不允許在UIViewController中使用靜態tableViews。 蘋果公司有其禁止這樣做的理由,因此最好不要搜索變通辦法,否則您將獲得一個具有意外行為的越野車應用程序。 你真的想要那個嗎?

對於這種情況,我要提出的建議是:

在您的VC類中包含一個簡單的UITableView,然后在tableView:cellForRowAtIndexPath:以編程方式對其進行自定義。 這樣,您就可以在完全控制的情況下獲得穩定的狀態。

暫無
暫無

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

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