2012-09-20 24 views
0

我有以下測試Android應用程序。從本機android活動代碼調用javascript函數

public class TestActivity extends Activity { 
    @Override 
    public void onCreate(Bundle savedInstanceState) {  
     super.onCreate(savedInstanceState); 

     setContentView(R.layout.main); 

     WebView webView = (WebView)findViewById(R.id.webView); 
     webView.getSettings().setJavaScriptEnabled(true); 
     webView.setWebChromeClient(new WebChromeClient()); 
     webView.loadUrl("file:///android_asset/www/test.html");   
    } 

    @Override 
    public boolean onCreateOptionsMenu(Menu menu) { 
     getMenuInflater().inflate(R.menu.sudoku, menu); 
     return true; 
    } 

    @Override 
    public boolean onOptionsItemSelected(MenuItem item) { 
    // Need to call javascript function testFun() here (see test.html) 
    } 
} 

代碼的test.html

<!doctype html> 
<html> 
    <head> 
    <title>Test</title> 
    <meta charset="UTF-8" /> 
    <script type="text/javascript"> 
    function testFun() 
    { 
     alert('Hi'); 
    } 
    </script 
    <body> 
     <button type="button" onclick="testFun()">Test</button> 
    </body> 
</html> 

我讀到的JavaScript http://developer.android.com/guide/webapps/webview.html

調用Android的功能,但不能得到如何從Android(菜單點擊)調用JavaScript函數。

回答

2

你有沒有試過這個。

webView.loadUrl("javascript:testFun()"); 
+0

是的..它工作.. – Manjoor