Gil*_*ean 7 iphone uitableview
我已经设置了一个带有几个自定义UITableViewCell的UITableView,它有一些UITextField和UISwitch(基于Settings.app).我的问题是,当用户点击导航栏中的"保存"按钮时,访问这些文本字段和切换控件以保存其值的节拍方式是什么?
Ed *_*rty 15
我的建议是不要使用自定义UITableViewCell.我曾经以自己的方式去做,但有更好的方法.使用可以为其指定任意视图的accessoryView属性UITableViewCell,例如UITextField或UISwitch.它与"设置"应用程序中的完全相同.
然后,当您需要访问它时,只需使用
NSString *text = ((UITextField *)cell.accessoryView).text;
Run Code Online (Sandbox Code Playgroud)
但是,您必须小心设置单元格并访问它们的值.如果任何单元格脱离屏幕,它将被删除,您将无法访问文本字段.设置单元格时要执行的操作是:
cell.accessoryView = nil; //Make sure any old accessory view isn't there.
if (/*cell needs text field*/) {
UITextField *textField = [[[UITextField alloc] initWithFrame:frame] autorelease];
textField.text = savedValue;
cell.accessoryView = textField;
[textField addTarget:self action:@selector(textChanged:) forControlEvents:UIControlEventValueChanged];
}
...
- (void) textChanged:(UITextField *)source {
self.savedValue = source.text;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
12553 次 |
| 最近记录: |