将数据加载到uiviewcontroller中的uitableview中

时间:2012-03-24 21:44:19

标签: iphone ios uitableview

我正在尝试从解析json的数组中加载数据...我确实在数组中有json数据,但是表视图方法甚至没有被调用...我有表视图嵌入在常规uiviewcontroller中,它编译并且表中的所有内容都不会加载任何数据。

- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
    return 1;
}

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
    return [transactions count];
}

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"any cell"];

    if (cell == nil) {
        cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:@"any cell"] autorelease];
    }

    NSLog(@"got here");
    cell.textLabel.text = [names objectAtIndex:indexPath.row];
    cell.detailTextLabel.text = [prices objectAtIndex:indexPath.row];
    return cell;
}

- (void)viewDidLoad 
{
    [super viewDidLoad];
    names = [[NSMutableArray alloc] init];
    prices = [[NSMutableArray alloc] init];
    [self requestTransactionData];
}

这是我的.h文件......

@interface Controller1 : UIViewController
    <UITableViewDelegate, UITableViewDataSource>
{
    UIActivityIndicatorView *loadingIndicator;

    IBOutlet UITableView *myTableView;
    IBOutlet UILabel *totalLabel;

    NSMutableArray *names;
    NSArray *transactions;
    NSMutableArray *prices;
}

@property(nonatomic, retain) IBOutlet UIActivityIndicatorView *loadingIndicator;
@property(nonatomic, retain) IBOutlet UILabel *totalLabel;

@property(nonatomic, retain) UITableView *myTableView;

我不能在这个项目中使用ARC。我也在界面构建器中正确连接...这些似乎相当容易,但由于某种原因我无法弄明白。有什么建议?

由于

2 个答案:

答案 0 :(得分:0)

  1. 我不知道你怎么知道没有调用数据源方法。您没有记录所有这些。如果在填充numberOfRowsInSection之前调用transactions或者为nil,则返回零,这就是结束。

  2. 尝试使用延迟性能调用reloadData,以便在填充 transactions后发生。表视图并不神奇地知道您的数据何时准备就绪;你必须告诉它。

答案 1 :(得分:0)

$3

填写价格后,请致电sef.tableView reloadData