UITableViewController的奇怪行为

时间:2011-07-25 11:33:22

标签: ios uitableview behavior

我正在创建一个应用程序(基于TabBar ),我正在 UINavigationController 添加 UITableViewController 一个 TableView 作为其rootViewController。

在文档中,我读到UITableViewController拥有的delegate,如果没有另外说明,则为dataSourceUITableViewDelegate他自己的​​tableViewController。

问题在于,从不调用两个协议(UITableViewDataSourceNSLog())的方法(使用{{1}}计算出来)。

我知道我在某个时候犯过错误,无法理解。

1 个答案:

答案 0 :(得分:0)

我不确定我是否理解你的问题,但这是一个粗略的猜测。

您是否在viewDidLoad方法的某处设置了UITableView的数据源和委托?

就像说你得到的东西是这样的:

@interface MyViewController <UITableViewDelegate,UITableViewDataSource>
{
    UITableView *myTableView;
}

@property (nonatomic, retain) UITableView *myTableView;

@end

在实现文件的viewDidLoad方法中,你应该有类似的东西:

-(void) viewDidLoad
{
    myTableView = [[UITableView alloc] initWithFrame:CGRectMake(0, 0, 320, 480)];

    [myTableView setDelegate:self]; //this view controller (MyViewController) will be the delegate
    [myTableView setDataSource:self]; // data will come from this view controller itself

    ...

    [super viewDidLoad];
}

那是你所追求的吗?