当点击按钮时,UITableView重新载入数据
问题描述:
我想在按下按钮时从uitableview重新载入数据。当点击按钮时,UITableView重新载入数据
例如: 如果我按下按钮1,那么我将显示ID为1的数据,如果我按下按钮2,那么我将显示带有ID 2的数据,并且以前的数据不会显示。
任何人都知道,我使用[tableview reloadData];不工作,如果我移动屏幕并返回到在tableview中显示数据的屏幕,会发生更改?
感谢之前。
答
使用此代码。
- (void)viewDidAppear:(BOOL)animated
{
[super viewDidAppear:animated];
[self.tableView reloadData];
}
如果当u点击按钮简单的写开除,这也
-(IBAaction) buttonclick
{
[self.tableView reloadData];
// your code...
}
答
你不应该创建的UILabel * labelMessage;和其他变量每次您的应用程序调用tableView:cellForRowAtIndexPath :.请尝试使用所有变量来执行此操作:
if (cell == nil) {
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
UILabel *labelMessage;
labelMessage = [[UILabel alloc] initWithFrame:CGRectZero];
labelMessage.backgroundColor = [UIColor clearColor];
labelMessage.tag = 5;
labelMessage.numberOfLines = 0;
labelMessage.lineBreakMode = UILineBreakModeWordWrap;
labelMessage.font = [UIFont systemFontOfSize:14.0];
labelMessage.shadowOffset = CGSizeMake(0, 1);
labelMessage.shadowColor = [UIColor whiteColor];
labelMessage.backgroundColor = [UIColor clearColor];
labelMessage.textColor = [UIColor colorWithRed:136.00/255.00 green:91.00/255.00 blue:14.00/255.00 alpha:1.0];
UIView *message = [[UIView alloc] initWithFrame:CGRectMake(0.0, 0.0, cell.frame.size.width, cell.frame.size.height)];
[message addSubview:labelMessage];
}
UILabel *labelMessage = (UILabel *)[cell viewWithTag:3];
/* Set textMessage value here */
labelMessage.text = textMessage;
return cell;
您应该在重新加载tableView之前更改数组中的数据。 – AMayes 2012-04-28 17:03:49