我有兩個視圖 - 一個是我的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