简体   繁体   English

通过单击UIAlertView确定按钮iPhone应用程序关闭了UITextView键盘?

[英]UITextView keyboard dismissed by clicking UIAlertView OK button iphone app?

Am working in messaging based iPhone app. 正在使用基于消息的iPhone应用程序。 In one of my UIViewController i am showing UITextView keyboard and am getting some alert messages from webservice. 在我的一个UIViewController中,我正在显示UITextView键盘,并从Web服务获取一些警报消息。

When i show the alert messages in UIAlertView, UITextview keyboard is dismissing by clicking OK button from UIAlertView. 当我在UIAlertView中显示警报消息时,通过单击UIAlertView中的“确定”按钮可以关闭UITextview键盘。 I have tried to put becomeFirstResponder in UIAlertView delegate but, still keyboard dismissing. 我试图将成为firstFirstResponder放在UIAlertView委托中,但是仍然关闭键盘。 For your reference, 供你参考,

-(void) alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex
{
   [messageTextView becomeFirstResponder]; // Here again I am giving becomeFirstResponder to my UITextView

   int alertMessageArrayCount = [alertMessageArray count];
    if (messageAlertView) 
    {
        if (messageAlertCount < alertMessageArrayCount)  // These codes to show my all messages in UIAlertView one by one..
        {
            messageAlertCount = messageAlertCount + 1;

            arrayObjectValue = arrayObjectValue + 1;

            NSString *alertMessage = [alertMessageArray objectAtIndex:arrayObjectValue];

            messageAlertView = [[UIAlertView alloc] initWithTitle:@"Alert" message:alertMessage delegate:self cancelButtonTitle:nil otherButtonTitles:@"OK", nil];
            [messageAlertView show];
            [messageAlertView release];
        }
    }
}

Can anyone please help to solve this issue? 谁能帮忙解决这个问题?

EDIT : 编辑:

messageTextView = [[UITextView alloc] initWithFrame:CGRectMake(35, 5, 210, 30)];
messageTextView.delegate = self;
messageTextView.backgroundColor = [UIColor clearColor];
messageTextView.clipsToBounds = NO;
messageTextView.font = [UIFont fontWithName:@"Helvetica" size:14];
[self.view addSubView:messageTextView];

in your UIAlertView delegate method try like below insted of [messageTextView becomeFirstResponder]; 在您的UIAlertView委托方法中,尝试如下所示安装[messageTextView成为firstResponder];

if([messageTextView resignFirstResponder]){
    [messageTextView becomeFirstResponder];
    }

将alertview的委托写为“ nil”而不是self。

 messageAlertView = [[UIAlertView alloc] initWithTitle:@"Alert" message:alertMessage delegate:nil cancelButtonTitle:nil otherButtonTitles:@"OK", nil];

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM