日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

安卓开发之android使用webview时按后退会退出而不是回退的问题

發布時間:2025/3/17 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 安卓开发之android使用webview时按后退会退出而不是回退的问题 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

最近公司使用android打包html5游戲,

使用android點webview打包html5游戲,代碼都好了,具體如下


public?class?MainActivity?extends?ActionBarActivity?{????@Override????protected?void?onCreate(Bundle?savedInstanceState)?{????????super.onCreate(savedInstanceState);WebView?webView=new?WebView(this);webView.getSettings().setJavaScriptEnabled(true);//支持js????????webView.loadUrl("http://www.ysmall.cc/mobile");webView.setWebViewClient(new?MyWebViewClient());}????@Override????public?boolean?onCreateOptionsMenu(Menu?menu)?{????????//?Inflate?the?menu;?this?adds?items?to?the?action?bar?if?it?is?present.????????getMenuInflater().inflate(R.menu.menu_main,?menu);????????return?true;}????@Override????public?boolean?onOptionsItemSelected(MenuItem?item)?{????????//?Handle?action?bar?item?clicks?here.?The?action?bar?will????????//?automatically?handle?clicks?on?the?Home/Up?button,?so?long????????//?as?you?specify?a?parent?activity?in?AndroidManifest.xml.????????int?id?=?item.getItemId();????????//noinspection?SimplifiableIfStatement????????if?(id?==?R.id.action_settings)?{????????????return?true;}????????return?super.onOptionsItemSelected(item);} }


一切貌似很完美,玩游戲,被電腦打敗了(我真菜!!!),游戲提示失敗,點擊“更多游戲”去查看其他游戲,點進去后,然后點返回鍵,問題來了,不是挖掘技術哪家強,是webview沒有后退功能,沒法退回首頁,而是直接退出,android開發問題還真多啊,還好哥機靈,找資料唄!

終于找到問題了,

只需要重寫activity的onKeyDown方法,在onKeyDown里后退即可

public boolean onKeyDown(int keyCode ,KeyEvent keyEvent){
if(keyCode==keyEvent.KEYCODE_BACK){//監聽返回鍵,如果可以后退就后退
if(webView.canGoBack()){
webView.goBack();
return true;
}
}
return super.onKeyDown(keyCode, keyEvent);

}


全部代碼貼出,免得以后忘記

import android.app.Activity;
import android.os.Bundle;
import android.view.KeyEvent;
import android.view.Menu;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;


public class MainActivity extends Activity {
private WebView webView;


@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
init();
}


@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}


private void init() {
webView = new WebView(this);
? webView.loadUrl("http://gqhondatp.61tg.com/");
? WebSettings settings = webView.getSettings();
? settings.setJavaScriptEnabled(true);
? webView.setWebViewClient(new WebViewClient() {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
??view.loadUrl(url);
return true;
}

});
setContentView(webView);
}?
public boolean onKeyDown(int keyCode ,KeyEvent keyEvent){
if(keyCode==keyEvent.KEYCODE_BACK){
if(webView.canGoBack()){
webView.goBack();
return true;
}
}
return super.onKeyDown(keyCode, keyEvent);

}
}

bingo

與君共勉~

轉載于:https://blog.51cto.com/8998489/1680000

總結

以上是生活随笔為你收集整理的安卓开发之android使用webview时按后退会退出而不是回退的问题的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。