您好,登錄后才能下訂單哦!
UITextField可以響應鍵盤上的完成按鈕,關閉鍵盤,而UITextView不一樣,它的return按鈕或者Done按鈕執(zhí)行的是換行功能,不能達到關閉鍵盤的目的。解決方法有兩個:一個是通過捕捉touch
End事件,當用戶點擊空白區(qū)域時關閉UITextView打開的鍵盤;一個是增加一個帶有完成按鈕的UIToolbar(這個UIToolbar當鍵盤彈出的時候總是顯示在鍵盤的上方,很完美的貼在一起,鍵盤收起,它也會隨著收起)。當然,將這兩個方法都集成進來運用也是可以的。
下面提供第二種方法的詳細代碼:
UIToolbar * topView = [[UIToolbar alloc]
initWithFrame:CGRectMake(0, 0, 320, 30)];
[topView
setBarStyle:UIBarStyleDefault];
UIBarButtonItem * btnSpace =
[[UIBarButtonItem alloc]
initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:self
action:nil];
UIBarButtonItem * doneButton = [[UIBarButtonItem alloc]
initWithTitle:@"完成" style:UIBarButtonItemStyleDone target:self
action:@selector(dismissKeyBoard)];
NSArray * buttonsArray = [NSArray
arrayWithObjects:btnSpace, doneButton, nil];
[btnSpace release];
[doneButton release];
[topView setItems:buttonsArray];
[m_myUITextView setInputAccessoryView:topView];
注:1.dismissKeyBoard是自定義的收起鍵盤的方法,可自定義其中的內(nèi)容,比如執(zhí)行[m_myUITextView
resignFirstResponder];
2.最后一行代碼setInputAccessoryView函數(shù)的調(diào)用是很關鍵的一句。
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。