滚动时我的表格视图单元格数据正在变化,为什么?

时间:2016-05-23 11:21:59

标签: ios

有人告诉我为什么所有时间数据都会改变?什么是解决方案?

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {

   UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"cell"];

   if(cell==nil)
    {
       NSArray *friendDetailObjects = [[NSBundle mainBundle] loadNibNamed:@"OrderNowCell" owner:self options:nil];

       NSLog(@"%@", friendDetailObjects);

       //  cell = [[UITableViewCell alloc]initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:cell];
       //  cell.selectionStyle = UITableViewCellSelectionStyleGray;
       cell = [friendDetailObjects objectAtIndex:0];

      cell.backgroundColor=[UIColor clearColor];
...

2 个答案:

答案 0 :(得分:0)

好的,你是以完全错误的方式解决这个问题。

首先你应该用tableview注册nib ......

[self.tableview registerNib:[UINib nibWithName:@"OrderNowCell" bundle:nil] forCellReuseIdentifier:@"OrderNowCell:]; 

viewDidLoad或其他内容中执行此操作。

然后在行的单元格中......

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {

    // this may need to be your custom cell subclass...
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"OrderNowCell" forIndexPath:indexPath];

    cell.backgroundColor=[UIColor clearColor];

    // add other details to cell here.

    return cell;
}

答案 1 :(得分:-1)

写入设置if条件之外的单元格数据的代码行。像下面的代码行。

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {

UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"cell"];




  cell.backgroundColor=[UIColor clearColor];

NSArray *friendDetailObjects = [[NSBundle mainBundle] loadNibNamed:@"OrderNowCell" owner:self options:nil];

   NSLog(@"%@", friendDetailObjects);

   //  cell = [[UITableViewCell alloc]initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:cell];
   //  cell.selectionStyle = UITableViewCellSelectionStyleGray;
   cell = [friendDetailObjects objectAtIndex:0];

...