关于如何将 UIview 作为子视图添加到 UITableCell 的问题
Posted
技术标签:
【中文标题】关于如何将 UIview 作为子视图添加到 UITableCell 的问题【英文标题】:Question on how to add a UIview as a subview to a UITableCell 【发布时间】:2010-07-07 23:50:20 【问题描述】:我有一个关于如何将 UIView 添加到 UITableViewCell 的问题。
在我的学习项目中,我有一个 UITableViewController (TableTestViewController、一个 UITabelViewCell.xib (MainTabelCell.xib) 和一个 UIView (InnerTableView)。 我的目标是在 UITableView 中显示 MainTableCell,在这个 MainTabelCell 中显示 InnerTabelView,但我只设法在表格中显示单元格。
TableTestViewController.h:
#import <UIKit/UIKit.h>
#import "InnerTableView.h"
@interface TableTestViewController : UITableViewController
UITableView *mainTable;
UITableViewCell *nibLoadedCell;
InnerTableView *innerView;
@property(nonatomic, retain) IBOutlet UITableView *mainTable;
@property(nonatomic, retain) IBOutlet UITableViewCell *nibLoadedCell;
@property(nonatomic, retain) InnerTableView *innerView;
@end
TableTestViewController.m:
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
static NSString *CellIdentifier = @"Cell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil)
[[NSBundle mainBundle] loadNibNamed:@"MainTableCell"
owner:self options:NULL];
cell = nibLoadedCell;
// Configure the cell.
innerView = [[UIViewController alloc] init];
[cell addSubview: innerView.view];
return cell;
有人知道为什么innerView 不会显示在TabelViewCell 中吗?我在这里错过了什么?我仍在学习所有这些东西,但 5 小时后我在我的书中找不到任何线索。希望这不是一个愚蠢的问题:)
谢谢
CaptnCrash
【问题讨论】:
确保插座也配置正确。在 .xib、nib 或故事板上检查文件的所有者属性 【参考方案1】:你应该使用 [cell.contentView addSubview:yourView];
顺便说一句,在您的代码中,您的 innerView 未正确释放。
【讨论】:
如果使用ARC如何释放innerView以上是关于关于如何将 UIview 作为子视图添加到 UITableCell 的问题的主要内容,如果未能解决你的问题,请参考以下文章
iOS - Interface Builder - 将元素作为子视图添加到 UIView
将 UIImage 视图作为子视图添加到 UIView 的实例