我有两个视图 - 一个是我的iphone应用程序中的表视图和其他详细视图。当选中表中的一行时,将显示详细视图。iPhone:如何使UITextField,UITextView在切换视图时不可编辑
我使用笔尖编辑记录,添加新记录以及显示记录的详细视图。详细视图有一个UITextField和一个UITextView,当我只显示记录时,它需要被设置为不可编辑。在桌面的didSelectRowAtIndexPath
方法我试过这...
-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
// Navigation logic may go here. Create and push another view controller.
MemoDetailViewController *memoDetailViewController = [[MemoDetailViewController alloc] initWithNibName:@"MemoDetailViewController" bundle:nil];
memoDetailViewController.memo = [self.resultsController objectAtIndexPath:indexPath];
// making the text field and text view uneditable - DID NOT WORK???
memoDetailViewController.memoTitleText.enabled = NO;
memoDetailViewController.memoTextView.editable = NO;
// Pass the selected object to the new view controller.
[self.navigationController pushViewController:memoDetailViewController animated:YES];
[memoDetailViewController release];
}
这是行不通的。 textfield和uitextview保持可编辑 - 当我点击它们时,键盘会出现。我在这里错过了什么?
这需要进入详细视图或表视图?我问,因为我需要控制从表格视图内的可编辑行为 - 当选择一行... – vikmalhotra
这取决于你如何设置。如果你正在使用一个包含tableView的视图控制器,它将会进入实现文件。如果你使用的是tableViewController,它会进入该实现文件。每次你点击一个textField(和其相应的方法都是类似的textView)时,这个方法会被调用,所以你可以添加你想要的任何逻辑,让它知道什么时候继续编辑(返回YES),或者它应该是什么时候仅用于显示(返回NO) – justin