如何在iPhone中单击detailtextlabel切换到不同的视图?
我有一个表视图,其中有3行。第一行是选择时钟是模拟的还是数字的。第二排有一个拨动开关,打开时显示天气。第三行显示时间格式,即用户希望选择24小时格式还是12小时格式的时间如何在iPhone中单击detailtextlabel切换到不同的视图?,iphone,objective-c,Iphone,Objective C,我有一个表视图,其中有3行。第一行是选择时钟是模拟的还是数字的。第二排有一个拨动开关,打开时显示天气。第三行显示时间格式,即用户希望选择24小时格式还是12小时格式的时间 第二行已经完成。但是我不知道如何处理第一个单元格,即默认情况下,第一行的detailtextlabel应该显示数字,当我单击单元格时,文本应该从数字变为模拟。因此,您希望在用户单击后更新UITableView的第一个单元格detailtextlabel,对吗 在TableView委托方法中,获取对用户单击的单元格的引用,并修改
第二行已经完成。但是我不知道如何处理第一个单元格,即默认情况下,第一行的detailtextlabel应该显示数字,当我单击单元格时,文本应该从数字变为模拟。因此,您希望在用户单击后更新UITableView的第一个单元格detailtextlabel,对吗 在TableView委托方法中,获取对用户单击的单元格的引用,并修改其detailTextLabel
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
UITableViewCell *cell = [self.tableView cellForRowAtIndexPath:indexPath];
cell.textLabel.text = @"New Text";
}
只需确保在更改文本之前检查用户单击的单元格,因为您有3个单元格。。。
检查单元格行或单元格现有文本
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
UITableViewCell *cell = [self.tableView cellForRowAtIndexPath:indexPath];
if(indexPath.row == 0){
if([cell.textLabel.text isEqualToString:@"Analog"]){
cell.textLabel.text = @"Digital";
}
else{
cell.textLabel.text = @"Analog";
}
}
}
如果要使用任何其他标签显示这些值,请将cell.textlab.text替换为lbl.text 请你把这个凹痕补一下好吗?