请查看下面的代码和图片以了解相关信息,
我使用UITableView
进行配置文件编辑,每个单元格中包含UILabel
的旧数据。输入新的详细信息并滚动后,值将自动更改为旧数据。
-(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
return identifiersAry.count;
}
-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
EditProfileTableViewCell *cell = (EditProfileTableViewCell *)[tableView dequeueReusableCellWithIdentifier:[identifiersAry objectAtIndex:indexPath.row]];
switch (indexPath.row) {
case NAME_CELL:
nameTxtFld = cell.firstNameTxtLbl;
name = [[[NSUserDefaults standardUserDefaults] objectForKey:@"user"] objectForKey:@"name"];
cell.firstNameTxtLbl.text = [[[NSUserDefaults standardUserDefaults] objectForKey:@"user"] objectForKey:@"name"];
break;
case UserName_Cell:
userNameTxtFld = cell.userNameTxtFld;
cell.userNameTxtFld.text = [[[NSUserDefaults standardUserDefaults] objectForKey:@"user"] objectForKey:@"userName"];
break;
default:
break;
}
[cell setSelectionStyle:UITableViewCellSelectionStyleNone];
return cell;
}
答案 0 :(得分:1)
解决了,我只是使用初始布尔值'YES',当它第一次加载从NSUserDefaults存储的所有数据时,当最后一个单元格加载时,我只是更改了'NO'值,那么它对我有用。谢谢。
-(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
return identifiersAry.count;
}
-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
EditProfileTableViewCell *cell = (EditProfileTableViewCell *)[tableView dequeueReusableCellWithIdentifier:[identifiersAry objectAtIndex:indexPath.row]];
switch (indexPath.row) {
case NAME_CELL:
nameTxtFld = cell.firstNameTxtLbl;
name = [[[NSUserDefaults standardUserDefaults] objectForKey:@"user"] objectForKey:@"name"];
if (isEnteringFirstTime)
cell.firstNameTxtLbl.text = [[[NSUserDefaults standardUserDefaults] objectForKey:@"user"] objectForKey:@"name"];
break;
case UserName_Cell:
userNameTxtFld = cell.userNameTxtFld;
if (isEnteringFirstTime)
cell.userNameTxtFld.text = [[[NSUserDefaults standardUserDefaults] objectForKey:@"user"] objectForKey:@"userName"];
isEnteringFirstTime = NO;
break;
default:
break;
}
[cell setSelectionStyle:UITableViewCellSelectionStyleNone];
return cell;
}