gpt4 book ai didi

android - Web View 未在 API 级别 19 (KITKAT) 中加载

转载 作者:行者123 更新时间:2023-11-30 01:23:52 24 4
gpt4 key购买 nike

我在 Android 中使用 webView 并尝试检查 API 级别大于或等于 19 的 Android。我的代码适用于大于或等于 19 的 API 级别,但 WebView 没有在 API 级别 19 中打开。有人可以检查一下吗这个出来这是代码:

    public boolean loadingFinished = true;//is loading finished
public boolean redirect = false;// redirect to page
/**
* {@inheritDoc}
*/
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.web_view, container, false);
mWebView = (WebView) rootView.findViewById(R.id.webView);
//initializing views
backButton = (BUtton) rootView.findViewById(R.id.web_view_back_button);
titleTextView = (TextView) rootView.findViewById(R.id.web_view_textView);
progressBar = (ProgressBar) rootView.findViewById(R.id.web_view_progress_bar);
backButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
getActivity().onBackPressed();
}
});
mWebView.setVisibility(View.GONE);//Visible the view after full loaded
mWebView.setInitialScale(1);
mWebView.getSettings().setJavaScriptEnabled(true);
mWebView.getSettings().setLoadWithOverviewMode(true);
mWebView.getSettings().setUseWideViewPort(true);
mWebView.setScrollBarStyle(WebView.SCROLLBARS_OUTSIDE_OVERLAY);
mWebView.setScrollbarFadingEnabled(false);
//check for network connection if not available show error msg!!!
if (!NetworkService.getConnectivityInfo().isConnected(getContext())) {
progressBar.setVisibility(View.GONE);
Toast.makeText(getContext(), getContext().getString(R.string.no_network_msg), Toast.LENGTH_SHORT).show();
} else {
mWebView.loadUrl("https://www.google.co.in");
}
progressBar.setVisibility(View.VISIBLE);
mWebView.setWebViewClient(new WebViewClient() {

/**
* {@inheritDoc}
*/
@Override
public boolean shouldOverrideUrlLoading(WebView view, String urlNewString) {
if (!loadingFinished) {
redirect = true;
}

loadingFinished = false;
view.loadUrl(urlNewString);
return true;
}

/**
* {@inheritDoc}
*/
@Override
public void onPageStarted(WebView view, String url, Bitmap favicon) {
loadingFinished = false;
}

/**
* {@inheritDoc}
*/
@Override
public void onPageFinished(WebView view, String url) {
if (!redirect) {
loadingFinished = true;
}

if (loadingFinished && !redirect) {
progressBar.setVisibility(View.GONE);
//After page is loaded then whole web-view is visible
mWebView.setVisibility(View.VISIBLE);
} else {
redirect = false;
}

}
});

return rootView;
}

最佳答案

在 API 级别 19 中,函数 setInitialScale(int scaleInPercent) 不起作用。这就是代码在 API 级别高于 19 时运行良好的原因。从我的代码中删除 mWebView.setInitialScale(1); 后,它也适用于 API 级别 19。

关于android - Web View 未在 API 级别 19 (KITKAT) 中加载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36717460/

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