1

我的功能[ViewController.tableView reloadData]不起作用,尽管我@class ViewController在 .h 文件中实现并#import "ViewController.h"在 .m 文件中导入。

我究竟做错了什么??

- - 编辑 - -

这是我的 .h 文件:

@class XMLAppDelegate, XMLProductDetailView;

@interface XMLViewController : UITableViewController <UIScrollViewDelegate, XMLImageDownloaderDelegate> {

    NSMutableDictionary *imageDownloadsInProgress; 

    XMLAppDelegate *appDelegate;
    XMLProductDetailView *productDetailView;
    IBOutlet UISearchBar *searchBar;
    IBOutlet UITableView *tableView;
}

@property (nonatomic, retain) NSMutableDictionary *imageDownloadsInProgress;
@property (nonatomic, retain) IBOutlet UISearchBar *searchBar;
@property (nonatomic, retain) IBOutlet UITableView *tableView;

- (void)imageDidLoad:(NSIndexPath *)indexPath;

@end

但请注意:当我包含时IBOutlet UITableView *tableView;,它隐藏了一个实例变量。

4

2 回答 2

4

UITableViewController 已经有一个名为 tableView 的属性。将您的属性重命名为 myTableView 之类的名称,您应该没问题。

于 2012-06-08T23:14:25.070 回答
1

ViewController 它是类名。你应该初始化这个类的实例变量

ViewController *vc = [[ViewController  alloc] init];

然后将其推到导航控制器上(如果存在)

vc.myDataForTable = [NSArray .....]; //for example

[self.navigationController pushViewController:vc animated:YES];

如果不使用 arc 则释放 vc

[vc release];
于 2012-06-08T23:06:21.550 回答