2011-07-07 61 views
1

我需要在javascript中爲android應用程序製作一些UI部分,因爲我正在編寫一些JavaScript代碼並將其加載到android web視圖中。現在,我想從javascript調用java類。它可以從JavaScript調用java類嗎?

是否有可能從JavaScript調用java類?

在此先感謝!

+0

你爲什麼要拆分這種方式的應用程序?爲什麼不直接在Java中編寫它,包括UI? – Soren

+0

,因爲我需要在android中繪製複雜的UI,你可以在http://stackoverflow.com/q/6596294/562296 – milind

回答

0

其實際雷爾容易(涼爽)使用:

webView.addJavascriptInterface(js, "pageObject"); 

js是一個java對象m在你的活動中(或者你啓動webview的地方),pageObject是你可以在你的網頁上用於javaScript的命名空間標識符(變量)。

3

這是可能的,但我不會爲您給出的使用情況下做到這一點:)(用戶界面可與Android框架來完成)

您可以加入他們所謂的「使用Javascript接口」,它們基本上從Javascript到Java代碼的鏈接。首先,定義一個類綁定包含你要調用的方法,並把它添加到您的WebView:

class HelloInterface 
    { 
     public void test(String name) 
     { 
      Log.i(TAG, "Hello " + name); 
     } 
    } 

    webview.addJavascriptInterface(new HelloInterface(), "HELLO"); 

然後,從你的JavaScript代碼,你可以叫

window.HELLO.test("Webview"); 
+0

看到以下問題你爲什麼要這麼做? – siliconeagle

+0

我的意思是我不會使用JavaScript只是爲了創建一個可以用原生Android框架完成的UI :)除此之外,綁定java和javascript是好的。 – Gregory

相關問題