UITextView
iPhoneアプリに2つあります。ユーザーが1つを選択UITextView
すると、コントローラーは自動的に別のコントローラーに移動しますUITextView
。私は自分のプロジェクトで次の方法を試しました。ただし、2番目は、ユーザーが2番目の内側をクリックするまで実行されUITextView
ません。becomefirstresponder
UITextView
-(void) viewDidLoad
{
TextView1 = [[UITextView alloc] initWithFrame:CGRectMake(10, 320, 300, 50)];
TextView1.delegate = self;
TextView1.backgroundColor = [UIColor clearColor];
TextView1.layer.borderWidth = 2;
TextView1.layer.borderColor = [UIColor blackColor].CGColor;
TextView1.layer.cornerRadius = 5;
[self.view addSubview: TextView1];
TextView2 = [[UITextView alloc] initWithFrame:CGRectMake(10, 5, 300, 30)];
TextView2.delegate = self;
TextView2.backgroundColor = [UIColor whiteColor];
TextView2.layer.borderWidth = 2;
TextView2.layer.borderColor = [UIColor lightTextColor].CGColor;
TextView2.layer.cornerRadius = 5;
[self.view addSubview: TextView2];
UIBarButtonItem *textBarButton = [[UIBarButtonItem alloc] initWithCustomView: TextView2];
accessoryToolBar = [[UIToolbar alloc] initWithFrame:CGRectMake(0, 0, 320, 44)];
accessoryToolBar.items = [NSArray arrayWithObjects:textBarButton, nil];
}
-(BOOL) textViewShouldBeginEditing:(UITextView *)textView
{
NSLog(@"TextView Should Begin Editing");
if (textView == messageTextView)
{
[TextView2 setInputAccessoryView:accessoryToolBar];
[TextView1 resignFirstResponder];
[TextView2 becomeFirstResponder];
}
else
{
[TextView2 setInputAccessoryView:accessoryToolBar];
[TextView1 resignFirstResponder];
}
return YES;
}
どうすればこれを修正できますか?