DGu*_*und 8 cocoa-touch objective-c uitableview ios
我在tableview应用程序中创建了一个"收藏页面"菜单,用户可以在其中保存自己喜欢的网页,然后通过菜单更轻松地导航到它们.
为了便于记住哪个链接是哪个,我想让用户单击一个显示"编辑"的按钮,以某种方式选择要编辑其名称的单元格,然后键入新名称并让单元格重命名本身就是用户键入的内容.我目前正在使用内置设置应用程序来保存链接数据.
我不需要知道我刚问的每个方面.我只是想知道用户是否可以编辑tableview的单元格文本,以及我将使用哪些方法.
我已经看到其他问题涉及类似的基础,但通常来自更具程序性的基础.
用户无法直接编辑tableview的单元格文本.(从技术上讲,它将是cell.textLabel.text).但是,如果它们进入"编辑"模式,您可以轻松地在单元格(或模态视图)中显示UITextField,该UITextField预先填充当前值,让它们编辑它,保存然后更新cell.textLabel.文本重视自己.
UITableView通常,这里会创建您的单元格
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
Run Code Online (Sandbox Code Playgroud)
(其中一位代表UITableView).
因此,如果您子类化UITableViewCell并公开text属性,则可以执行您想要的操作,包括UITextField在Cell中保存实例.确保像往常一样使用出队的东西.
然后,当用户触摸时,UITableViewCell您可以给出UITextField焦点:
-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
[self.thatTextFieldIMentioned becomeFirstResponder];
}
Run Code Online (Sandbox Code Playgroud)
如果您创建UITableViewCell子类a UITextFieldDelegate并使其成为文本字段的委托,您可以轻松处理这些令人讨厌的难以记住的方法:
- (void)textFieldDidEndEditing:(UITextField *)textField {
NSLog(@"yeah inform someone of my change %@", textField.text);
}
- (BOOL)textFieldShouldClear:(UITextField *)textField {
return YES;
}
- (BOOL)textFieldShouldReturn:(UITextField *)textField {
[textField resignFirstResponder];
return YES;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
14092 次 |
| 最近记录: |