如何在我的webview中添加旋转微调器?

时间:2013-09-03 15:33:43

标签: android

我制作了一个webview,我需要添加一个加载/旋转微调器。我有相同的图像,但我不知道如何去做,这样当webview加载时它开始旋转,当整个视图加载时它停止。到目前为止,这是我的代码:

 @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {

        View view = inflater.inflate(R.layout.fragment_search_answers, container, false);
      mWebview =  (WebView)view.findViewById(R.id.webview);


        mWebview.setVisibility(View.VISIBLE);


            mWebview.setWebViewClient(new MyWebViewClient(this, mWebview));
            mWebview.getSettings().setPluginState(PluginState.ON);
            mWebview.getSettings().setUseWideViewPort(true);
            mWebview.getSettings().setDefaultZoom(ZoomDensity.FAR);
            mWebview.getSettings().setBuiltInZoomControls(true);
            mWebview.getSettings().setSupportZoom(true);
            mWebview.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);
            mWebview.getSettings().setAllowFileAccess(true);
            mWebview.getSettings().setDomStorageEnabled(true);
            mWebview.getSettings().setJavaScriptEnabled(true);
            mWebview.setHttpAuthUsernamePassword(HOST, REALM, USERNAME, PASSWORD);
            mWebview.getSettings().setAppCacheEnabled(true);
            if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB)
                mWebview.getSettings().setDisplayZoomControls(false);

            mWebview.loadUrl(URL);


        return view;
    }

P.S:我想添加恒定的动画旋转。这是我在动画下添加的rotate.xml的代码:

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
    <rotate
        android:fromDegrees="180.0"
        android:toDegrees="0.0"
        android:pivotX="50%"
        android:pivotY="50%"
        android:duration="200"
    />
</set>

知道如何将我的webview连接到imae并最终连接到rotate.xml以使其符合预期标准吗?

谢谢! 贾斯汀

1 个答案:

答案 0 :(得分:8)

解决方案很简单: 在这一行下面:

View view = inflater.inflate(R.layout.fragment_search_answers, container, false);
      mWebview =  (WebView)view.findViewById(R.id.webview);

添加:

mPbar = (ProgressBar) view.findViewById(R.id.web_view_progress);

在标题中设置为:

private ProgressBar mPbar = null;

然后转到您的网络视图客户端部分并添加:

@Override
        public void onPageStarted(WebView view, String url, Bitmap favicon) {
mPbar.setVisibility(View.VISIBLE);
}

和:

public void onPageFinished(WebView view, String url) {
mPbar.setVisibility(View.GONE);
        }

广告不要忘记将<progressbar设置为xml中的样式和所需宽度高度低于<webview>,它会创造奇迹。