私は2つのビューを持っています.1つはテーブルビューと他の詳細ビューです。表内の行が選択されると、詳細ビューが表示されます。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];
}
これは動作しません。テキストフィールドとuitextviewは編集可能なままです。キーボードをタップするとキーボードが表示されます。私はここで何が欠けていますか?
詳細ビューまたはテーブルビューに移動する必要がありますか?行が選択されたときに、テーブルビューの内部から編集可能な動作を制御する必要があるため、私は尋ねました。 – vikmalhotra
これは設定方法によって異なります。 tableViewを保持するビューコントローラを使用している場合、実装ファイルに入るだけです。 tableViewControllerを使用している場合、その実装ファイルに入ります。このメソッドは、textField(およびそれぞれのメソッドのtextViewも同様です)をクリックするたびに呼び出されるため、編集を続行するか(YESを返すか)、いつ行うべきかを知らせるためにそこに必要なロジックを追加できます表示のみの場合(NOの場合) – justin