Method 1:
* Javascript in HTML:
<SCRIPT LANGUAGE="JavaScript">function checkOrientation(){alert(window.orientation);};window.addEventListener('onorientationchange' in window ? 'orientationchange' : 'resize', checkOrientation, false);function print() {window.location="print://print";};function setting() {window.location="setting://setting";};</SCRIPT>
* Java code:
Public Boolean shouldoverrideurlloading (webview view, string URL ){
Apputils. logd (URL );
If (URL. startswith ("mailto :")){
Mailto Mt = mailto. parse (URL );
Intent I = apputils. newemailintent (activity, MT. getto (),
Mt. getsubject (), MT. getbody (), MT. getcc ());
Activity. startactivity (I );
View. Reload ();
Return true;
} Else if (URL. startswith ("Print: // print ")){
// Show toast message for print button
Toast. maketext (activity, R. String. print_button_alert,
Toast. length_long). Show ();
Return true;
} Else if (URL. startswith ("setting: // setting ")){
// Show Setting Dialog
(Detailviewcontrolerimpl) activity). opensettingspage ();
Return true;
} Else {
Return false;
}
}
Method 2:
Javascript in HTML (mypage ):
<! Doctype HTML public "-// W3C // dtd html 4.01 transitional // en" "http://www.w3.org/TR/html4/loose.dtd">
<HTML>
<Head>
<Title> actuate viewer </title>
<SCRIPT type = "text/JavaScript">
Function Change (){
Document. getelementbyid ("changephoto"). src = "file: // android_res/drawable/tablet_header_categories_on.png ";
}
</SCRIPT>
</Head>
<Body>
<A onclick = "window. mypage. clickonandroid ()"> Src = "file: // android_res/drawable/tablet_header_history_on.png"/> <br> click me! </A>
</Body>
</Html>
Java code:
Mwebview. addjavascriptinterface (New myjavascriptinterface (), "mypage ");
Public void onpagefinished (webview view, string URL ){
// Trigger this method
Loadurl ("javascript: window. Android"
+ ". Loadpagecontents ('" + birtreportsettings. Values [2]
+ "','" + Birtreportsettings. Values [0] + "','"
+ Birtreportsettings. Values [1] + "')");
Super. onpagefinished (view, URL );
}
Final class myjavascriptinterface {
Public myjavascriptinterface (){
}
/**
* Call loadpagecontents () in JS, pass parameter volume, username,
* Password
*/
Public void loadpagecontents (string volume, string username,
String password ){
Loadurl ("javascript: loadpagecontents ('" + volume + "','"
+ Username + "','" + password + "')");
}
Public void clickonandroid (){
Mhandler. Post (New runnable (){
@ Override
Public void run (){
Mwebview. loadurl ("javascript: Change ()");
}
});
}
}