CẬP NHẬT: Đã giải quyết! Vấn đề liên quan đến Viewpager của tôi không phải là WebView.Cách thêm chức năng "Quay lại" trong WebView bên trong Phân đoạn?
Tôi đang cố gắng thêm chức năng "Quay lại" vào số WebView
nằm trong số Fragment
. Nhưng tôi không thể tìm ra cách để:
public final class TestFragment extends Fragment {
static WebView mWeb;
private View mContentView;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState)
{
mContentView = inflater.inflate(R.layout.webview, null);
mWeb = (WebView)mContentView.findViewById(R.id.webview);
WebSettings settings = mWeb.getSettings();
settings.setJavaScriptEnabled(true);
settings.setSupportZoom(false);
mWeb.setScrollBarStyle(View.SCROLLBARS_INSIDE_OVERLAY);
mWeb.getSettings().setBuiltInZoomControls(false);
mWeb.loadUrl("myurl...");
mWeb.setOnKeyListener(new OnKeyListener(){
public boolean onKey(View v, int keyCode, KeyEvent event) {
if ((keyCode == KeyEvent.KEYCODE_BACK) && mWeb.canGoBack()) {
mWeb.goBack();
return true;
}
return false;
}
});
}
}
Tôi cũng đã cố gắng một cái gì đó như:
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if ((keyCode == KeyEvent.KEYCODE_BACK) && mWeb.canGoBack()) {
mWeb.goBack();
return true;
}
return super.onKeyDown(keyCode, event);
}
Một giải pháp nhưng cùng một vấn đề:
@Override
public void onBackPressed()
{
if(webView.canGoBack())
webView.goBack();
else
super.onBackPressed();
}
Bất kỳ ý tưởng làm thế nào để làm việc này ?
gì sẽ xảy ra? tùy chọn thứ ba thực hiện onBackPressed() làm việc cho tôi, hãy chắc chắn rằng bạn thực sự có một cái gì đó để quay trở lại. –
và sự cố là gì? Tôi có một tình huống rất giống nhau :) – desgraci
[Làm cách nào để quay lại trang trước nếu nút quay lại được nhấn trong WebView?] (Https://stackoverflow.com/q/6077141/6521116) –