gpt4 book ai didi

java - 在 Sub-Fragment 中,当 webview 无法返回时,如何重定向到 Main-Fragment 或 Home-Fragment

转载 作者:行者123 更新时间:2023-11-30 04:55:57 27 4
gpt4 key购买 nike

在我的应用程序中,我创建了一个带有 2 个按钮的主 fragment ,每个按钮都有不同的 fragment 和不同的 webview。这是我的子 fragment 代码,我是新来的,请原谅我的错误。

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;

}

}

最佳答案

如果要回到主 fragment ,你需要在 MainFragment 中使用 ChildFragmentManager 代码如下:

FragmentManager manager = getChildFragmentManager();
FragmentTransaction trans = manager.beginTransaction();
manager.popBackStack();

关于java - 在 Sub-Fragment 中,当 webview 无法返回时,如何重定向到 Main-Fragment 或 Home-Fragment,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59168648/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com