2010-05-01 80 views
1

對於應用我的工作我想自定義鍵盤上來時,你點擊在一個UIWebView輸入字段,例如用於UITextView的我用這個代碼:填寫的UIWebView的TextInput自定義鍵盤

myText.text = [myText.text stringByAppendingString:@"a"]; 

但我不知道如何填寫UIWebVIew中的文本字段 任何幫助將非常感激;謝謝!

+0

你想填充文本字段programmaticaly或使用用戶輸入? – coder 2013-02-04 07:47:15

回答

0

檢查dcorbatta的這篇文章Custom Keyboard in UIWebView

在回答他建議使用的UITextField作爲「媒體」,當你發現鍵盤來了一個UIWebView裏面。因此,您可以在UITextField上使用任何想要的鍵盤類型。用戶點擊某些內容後,通過JavaScript ActiveDocument將文本複製到UITextField中。

1

我不認爲這是可能的UIWebView中使用自定義鍵盤文本字段。

+0

所以他做了什麼?: 他使用自定義鍵盤 http://itunes.apple.com/us/app/arabic-browser-for-ipad/id367397633?mt=8 – 2010-05-01 09:58:28

+0

因爲他所做的是使用URL地址欄的自定義鍵盤,這只是Cocoa Touch可以與之交談的「UITextView」。但據我所知,這是不可能劫持鍵盤的'UIWebView'內的文本字段...... – 2010-05-01 10:05:22

+0

謝謝!是的,你的權利 – 2010-05-01 11:39:31

1

有一個與UIWebView的雙向通信,但它是一個有點令人費解。

您可以使用stringByEvaluatingJavaScriptFromString在網頁的上下文中執行任何JavaScript。這可用於將數據發送到網頁,修改表單或輪詢數據和事件。

您可以使用webView:shouldStartLoadWithRequest:navigationType:從網絡視圖收到通知。定義一個像myapp:這樣的自定義方案,並處理從shouldStart返回NO的所有請求。您可以使用ajax樣式調用觸發通知,但實際的ajax調用總是會失敗,因爲您返回NO。

如果你想有一個自定義鍵盤顯示出來,你必須通過你的自定義方案發送到主機應用程序的通知,顯示在Web視圖一個UITextView,然後通過JavaScript將結果發送回。

至少,這是記錄在案的方式來做到這一點。

+0

這只是如果你想填寫一個網頁是必要的。我感覺OP希望使用UIWebView作爲「更好」的UITextView--在這種情況下,您可以使用loadHTMLString:來提供它。 – 2010-05-01 10:42:37

+1

thnak你,但我認爲這對我來說很複雜!:) – 2010-05-01 11:39:56

0

我花了太多的時間來調查。

使用JavaScript或jQuery模糊文本輸入。 使用屏幕鍵盤就像任何UIjquery插件

現在你必須看看這個漂亮的鍵盤,並學習如何將它集成到你的網頁。

http://net.tutsplus.com/tutorials/javascript-ajax/creating-a-keyboard-with-css-and-jquery/

一個限制。 它只適用於您的網頁,除非您在加載和附加鍵盤時劫持頁面,並在突出顯示或聚焦時模糊所有文本輸入。