小编azd*_*dev的帖子

cellForRowAtIndexPath未被调用; sections返回1,rows返回4

在解析Data类中的JSON数据之后,我在同一Data类的fillArrays方法中设置了UIViewController的NSArray*headlines属性.在我的UIViewController的viewDidAppear方法中,我在UITableView上调用reloadData.numberOfSectionsInTableView触发并返回1,然后numberOfRowsInSection触发并返回数组计数4(对于数组中的4个字符串).但是,控制永远不会到达cellForRowAtIndexPath,而我最难理解为什么,特别是因为我有有效的部分和行.细胞都是可见的.

我已经将UITableViewDataSource和UITableViewDelegate协议添加到UIViewController接口,并在ViewDidLoad中将UITableView的委托和dataSource设置为self(这也通过调用的行和节计数方法进行验证).

我想知道是否有一些东西要重新初始化Data.m中的UIViewController以设置其属性.

在Data.m中:

- (void)fillArrays:(NSArray *)jsonObjs {
    NSLog(@"fillArrays");               
    HeadlinesRootViewController *hrvc = [[HeadlinesRootViewController alloc] init];
    hrvc.headlines = [self getJsonValuesForKey:@"headline" inArrayOfObjects:jsonObjs];
    [hrvc viewDidAppear:NO];
}
Run Code Online (Sandbox Code Playgroud)

在ViewController.m中:

- (void)viewDidLoad {
    [super viewDidLoad];
    NSLog(@"viewDidLoad");
    // Table view
    headlineTableView = [[UITableView alloc] initWithFrame:CGRectMake(0, 180, self.view.bounds.size.width, 300) style:UITableViewStylePlain];
    [headlineTableView setDelegate:self];
    [headlineTableView setDataSource:self];
    // Temporary
    self.headlines = [[NSMutableArray alloc] initWithObjects:@"headline1", @"headline2", @"headline3", @"headline4", nil];



    [self.view addSubview:headlineTableView];
    self.headlineTableView = headlineTableView;
    [headlineTableView release];
}
- (void)viewDidAppear:(BOOL)animated {
    [super viewDidAppear:animated];
    NSLog(@"viewdidappear");
    NSLog(@"headlines: %@", self.headlines); // Returns an array of 4 …
Run Code Online (Sandbox Code Playgroud)

iphone cocoa-touch objective-c uitableview

5
推荐指数
1
解决办法
2万
查看次数

Eclipse Indigo完全重置自己 - 项目和设置不见了

今天早上在Windows XP SP3上发布了Eclipse Indigo,并注意到它花了很长时间; 我禁用了启动插件,启动时间通常只需几秒钟.

最后,Eclipse打开了欢迎屏幕.我发现有点奇怪,考虑到我的默认视角是Workbench.所以我点击了Workbench并且Package Explorer是空的 - 我的所有项目都没了.此外,我所有经过仔细调整的偏好都已重置.

幸运的是我的项目文件仍然完整,我可以导入它们.

我曾经在Galileo的Mac上发生这种情况,认为这只是一个侥幸,但现在它已经成为Eclipse自我意识的两倍了.

我一直在使用Indigo几个月,在我的上一次会议期间没有改变偏好或.ini.我不使用AV,我的电脑没有恶意软件.

对于商业级IDE来说,这是危险的行为 - 任何关于为什么会发生这种情况的想法以及未来可以采取哪些措施来阻止它?

eclipse eclipse-indigo

5
推荐指数
1
解决办法
1445
查看次数