2013-06-04 37 views
0

在我的添加聯繫頁面中,驗證我的電子郵件文本字段,電話號碼字段等。並且在點擊所有其他文本字段時檢查有效的電子郵件。所以當我點擊電話號碼字段時,它將檢查電子郵件的有效性,並在電子郵件無效時顯示alertview。所以當我點擊確定按鈕在alertView,光標應該去電子郵件的文本字段,而不是在電話號碼字段..任何人都可以幫助這個..?如何從另一個textField的alertView後將焦點移到文本字段

回答

1

- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex 
{ 
    if([alertView isEqual:emailAlert])//emailAlert should be the instance variable 
    { 
     if(buttonIndex == 0)//assumes ok button index is 0 
     { 
      [textfield becomeFirstResponder]; 
     } 
    } 
} 
+0

這位朋友你好..我有多個alertviews ..顯示無效的電子郵件,無效的電話號碼等,但只有當顯示無效的電子郵件alertview時,光標纔會轉到電子郵件文本字段..如何在此alertview委託方法中實現該功能.. – Mano

+0

@ManojEllappan:請查找我的解決方案 – manujmv

1

您可以設置AlertView的代表和 「確定」 按鈕的點擊,

- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex { 
     if (buttonIndex == 0) { 
     [txtEmail becomeFirstResponder]; // your "Email" textField will get focused 
    } 
} 

嘗試這種方式.. HTH :)

在alertview的委託方法
2

爲使任何文本字段的第一響應者。你可以在你的alertview委託中做到這一點。

[yourTxtField becomeFirstResponder];

1

使您的視圖控制器實現UIAlertViewDelegate,並將當前類作爲委託添加到顯示的警報視圖。在– alertView:clickedButtonAtIndex:使電話文本字段退出第一響應者,並使電子郵件文本字段成爲第一響應者。

1

確保你的類符合UIAlertViewDelegate協議,並顯示像

UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Title" message:@"Your Message" delegate:self cancelButtonTitle:@"cancel " otherButtonTitles:@"OK", nil]; 
[alert show]; 
[alert release]; 

警報實現諸如

委託方法
- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex{ 
    if(buttonIndex == 0)//ok button index is 0 
     [textFieldEmail becomeFirstResponder]; 
} 
相關問題