如何将 xib 的子视图显示到另一个 xib 的表格单元加载中

Posted

技术标签:

【中文标题】如何将 xib 的子视图显示到另一个 xib 的表格单元加载中【英文标题】:How to show a subview of xib into table cell load from another xib 【发布时间】:2013-02-14 10:30:53 【问题描述】:

我在从 xib 文件加载 xib 子视图 [TestSummaryView] 到表格单元 [NotesTableCell] 时遇到问题。我的 xib 子视图只有在通过拖出屏幕刷新单元格后才可见。

MainFile.m:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath 


NotesTableCell *cell = [tableView dequeueReusableCellWithIdentifier:@"NotesTableCell"];
if (cell == nil) 

    [[NSBundle mainBundle] loadNibNamed:@"NotesTableCell" owner:self options:nil];
    cell = __noteTableCell;
    self.__noteTableCell = nil;


(...)

for (UIView* view in [cell.summaryView subviews])
    [view removeFromSuperview];

UIView* view = [note.form summaryView];
[cell.summaryView addSubview:view];
view.bounds = cell.summaryView.bounds;
view.center = CGPointMake(cell.summaryView.bounds.size.width/2, cell.summaryView.bounds.size.height/2);

[cell.webView setHidden:YES];
[cell.summaryView setHidden:NO];                               

TestForm.m

-(UIView*)summaryView 

if (!_testSummaryView) 

    NSArray* xib = [[NSBundle mainBundle] loadNibNamed:@"TestSummaryView" owner:self options:nil];
    _testSummaryView = [[xib objectAtIndex:0] retain];


(...)

return _testSummaryView;

【问题讨论】:

【参考方案1】:

问题解决了。它在代码的其他部分。

【讨论】:

以上是关于如何将 xib 的子视图显示到另一个 xib 的表格单元加载中的主要内容,如果未能解决你的问题,请参考以下文章

如何执行从自定义 UITableViewCell(xib) 到另一个 ViewController 的 segue 视图

将 xib 视图初始化为另一个 NSView 的子视图

将 XIB 加载到另一个 XIB 的视图中

UIView transitionWithView 带有多个xib文件的子视图

如何使用 XIB 的子视图实现 UIScrollView

将 xib 中的子视图添加到自定义 UIView