簡體   English   中英

取消關閉viewController時重新啟動鍵盤

[英]Resign keyboard when viewController is dismissed

我有一個包含textField的單元格。 當viewController打開時,我通過以下代碼將其指定為第一個響應者:

cell.namTextField.becomeFirstResponder()

當我關閉viewController時,鍵盤隱藏了一個延遲,這看起來不太好。 我怎樣才能在viewController時resignTheFirstResponder? 當textField在單元格中時我無法在函數中訪問它?

您可以使用self.view.endEditing(true) ,它將遍歷視圖中的所有子視圖(此處為控制器的主視圖)和force(這是true部分)任何當前是第一個要辭職的響應者的視圖。

我想在viewWillDisappear:使用它是有意義的viewWillDisappear:為了在控制器被解除之前隱藏鍵盤(或者推送另一個鍵盤等)

您可以使用以下代碼行來關閉鍵盤。

[[UIApplication sharedApplication] sendAction:@selector(resignFirstResponder) to:nil from:nil forEvent:nil];

此方法將關閉任何應用程序視圖中的任何鍵盤

試試這個方法隱藏鍵盤: -

- (void) hideKeyboard:(BOOL)hidden
{
    NSArray *arrWindows = [[UIApplication sharedApplication] windows];
    if ([arrWindows count] > 1)
    {
        UIWindow *keyboardWindow = [arrWindows objectAtIndex:1];
        [keyboardWindow setHidden:hidden];
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM