在我的应用程序中,我创建了一个带有2个按钮的主片段,每个按钮都有不同的片段,并带有不同的webview。这是我的子片段代码,我是新来的,所以请原谅我的错误。
public class SubFragment extends Fragment {
private WebView webView;
public SubFragment() {
// Required empty public constructor
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_sub, container, false);
webView = (WebView) view.findViewById(R.id.webView);
webView.setWebViewClient(new WebViewClient());
webView.getSettings().setJavaScriptEnabled(true);
webView.loadUrl("https://www.google.com/");
webView.getSettings().setLoadWithOverviewMode(true);
webView.getSettings().setUseWideViewPort(true);
WebSettings webSettings=webView.getSettings();
webSettings.setJavaScriptEnabled(true);
这是goBack的代码。当Webview无法访问时,我只想在Main Fragmnet上重定向
webView.canGoBack();
webView.setOnKeyListener(new View.OnKeyListener() {
public boolean onKey(View v, int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK
&& event.getAction() == MotionEvent.ACTION_UP
&& webView.canGoBack()) {
webView.goBack();
return true;
}
return false;
}
});
return view;
}
}
最佳答案
如果要返回主片段,则需要在MainFragment中使用ChildFragmentManager作为以下代码:
FragmentManager manager = getChildFragmentManager();
FragmentTransaction trans = manager.beginTransaction();
manager.popBackStack();