2012-01-04 77 views
0

我在寫MonoTouch iOS應用程序。我已經閱讀了許多關於ResignFirstResponder的帖子,我正在使用它。MonoTouch關閉鍵盤(各種)

我的應用程序是一個典型的表格視圖應用程序。我做了我自己的自定義表格單元格視圖。引起數字小鍵盤出現的UITextField控件都位於自定義表格單元格中。

目前我擁有它,因此如果您點擊單元格的背景,我會在所有文本字段上調用ResignFirstResponder。這似乎工作,但不直觀。我有一個新的測試版測試人員昨晚得到它,他在其中一個文本字段上敲擊,鍵盤出現了,他失去了如何擺脫它。在我告訴他只是點擊背景後,他現在很好,但顯然我需要一個明顯的解決方案,並且不需要我告訴大家它是如何工作的。

我看過一篇關於在鍵盤上添加一個DONE按鈕的文章,但它看起來像是一個徹頭徹尾的破解,甚至在3.2.1出來時破壞了,我不想擔心我的應用程序崩潰當一個新的操作系統出來時。

對此提出建議?

回答

1

我會保持背景click-> ResignFirstResponder,你已經,但添加到它。

好奇,您在鍵盤右下方設置了哪個按鈕?可以選擇顯示完成,搜索,轉到,下一步等按鈕,可以設置爲ResignFirstResponder。選擇適合您情況的按鈕。

您可以通過設置回調到UITextField.ShouldReturn並調用ResignFirstResponder來鉤入右下角按鈕。您可以返回false(該返回值用於允許在UITextField中換行)。

找到一個連接ShouldReturn的示例here

+0

我會試試這個。我不知道你可以設置那個按鈕。我已閱讀過ShouldReturn,但並未意識到您可以更改按鈕的用途。目前它被設置爲退格或刪除(也可以稱之爲)。 – user856232 2012-01-09 16:47:22

+0

這是一個很好的答案,但不是完整的答案。它適用於阿爾法鍵盤和數字和標點鍵盤。它不適用於數字鍵盤鍵盤。數字鍵盤鍵盤沒有用於完成按鈕的位置。你有另一個想法嗎? – user856232 2012-01-09 22:13:18

+0

對不起,沒有意識到它不是在號碼簿上。有一個InputAccessoryView用於將您自己的控件附加到鍵盤的頂部,類似於Safari的操作。看到這篇文章:http://stackoverflow.com/questions/4175212/how-to-add-a-uitoolbar-on-top-of-uikeyboard-using-monotouch – jonathanpeppers 2012-01-09 22:20:03