java - fragment View 中 webview 的进度条

标签 java android eclipse

我正在尝试在 Eclipse 中为 Android 制作一个应用程序。我在其中使用 webview 的不同 fragment 。但是我想在加载 webview 时显示一个进度条,但我不知道该怎么做我检查了很多教程但没有这样做。让我把大部分 Activity 代码放在这里。

import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuItem;
import android.view.MenuInflater;
import android.view.View;
import android.view.ViewGroup;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.app.Fragment;
import android.annotation.SuppressLint;
//import android.graphics.Bitmap;
//import android.widget.ProgressBar;
//import android.app.ProgressDialog;
//import android.app.Activity;


@SuppressLint("SetJavaScriptEnabled")
public class AdminTab1 extends Fragment {
     private WebView webView;

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
        Bundle savedInstanceState) {
        setHasOptionsMenu(true);
        View rootView = inflater.inflate(R.layout.admintab1, container, false);
    webView = (WebView) rootView.findViewById(R.id.webView1);
    webView.setWebViewClient(new WebViewClient());
    webView.setScrollbarFadingEnabled(false);  
    webView.setHorizontalScrollBarEnabled(false);  
    webView.getSettings().setJavaScriptEnabled(true);  
    webView.getSettings().setUserAgentString("AndroidWebView");  
    webView.clearCache(true);
    webView.loadUrl("http://ww.google.com"); 
    return rootView;
    }

    @Override 
    public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
        super.onCreateOptionsMenu(menu, inflater);
        inflater.inflate(R.menu.mainmenu, menu);
    }
    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        switch (item.getItemId()) {
            case R.id.item1:
                webView.reload();
                break;
            case R.id.item2:
                webView.goBack();
               break;
            default:
               break;
        }
        return true;
    } 
}

最佳答案

你应该试试这个

public class About27Fragment extends Fragment{

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState){
    View rootView = inflater.inflate(R.layout.about_27, container, false);

    final WebView webView = (WebView) rootView.findViewById(R.id.webView_about27);
    final ProgressDialog dialog = ProgressDialog.show(getActivity(), "", "Please wait, Loading Page...", true);


    webView.getSettings().setJavaScriptEnabled(true);
    webView.getSettings().setLoadWithOverviewMode(true);
    webView.getSettings().setUseWideViewPort(true);
    webView.getSettings().setBuiltInZoomControls(true);

    webView.setWebViewClient(new WebViewClient() {

        public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) {}

        @Override
        public void onPageStarted(WebView view, String url, Bitmap favicon){
            dialog.show();
        }

        @Override
        public void onPageFinished(WebView view, String url){
            dialog.dismiss();
            String webUrl = webView.getUrl();
        }


    });

    webView.loadUrl("https://www.google.com.mx");

    return rootView;
}

关于java - fragment View 中 webview 的进度条,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21134333/

相关文章:

android - Google Play 游戏服务登录回调

java - Minecraft [GRADLE] 1.7.2 - 无法使用外部 .jar?

eclipse - 缺少哪个 jar ?

java - 当用户离线时显示对话框并在用户在线时关闭它(使用广播接收器)

Java:PDF 转换器在 Mac 中工作,但在 Windows 中,生成空的 PDF 文件

java - DbUnit NoSuchTableException - Oracle 中长表名的解决方法

php - Android 中的 JSON 异常与服务器端的 PHP 代码

java - 当你插入充电器时,android 会调用什么服务和类?

android - 在android中的布局之间切换

Python AttributeError 'str' 对象没有属性 '_sID'