在我的应用程序中,我创建了一个带有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();

10-07 19:46
查看更多