Comment puis-je afficher ProgressDialog à l'aide de Fragment

J'ai un Fragment de l'activité qui a un ListFragment sur la gauche et un Fragment sur le droit qu'a une WebView. La fonctionnalité fonctionne bien, mais je voudrais afficher une boîte de dialogue de progression affiche "Chargement...", tandis que la page web est terminé le chargement. Comment puis-je accomplir ce qui semble être une tâche triviale?

Ci-dessous mon code:

public class ArticleListActivity extends FragmentActivity implements
    ArticleListFragment.OnArticleSelectedListener {

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.articlelist_fragment);
    }

    public void onArticleSelected(String contentLink) {
        ArticleViewerFragment viewer = (ArticleViewerFragment) getSupportFragmentManager()
                .findFragmentById(R.id.articleview_fragment);

        if (viewer == null || !viewer.isInLayout()) {
            Intent showContent = new Intent(getApplicationContext(),
                    ArticleViewerActivity.class);

            showContent.setData(Uri.parse(contentLink));
            startActivity(showContent);
        } else {
            viewer.updateUrl(contentLink);
        }
    }
}

Voici mon FragmentActivity

public class ArticleViewerActivity extends FragmentActivity {

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.articleview_fragment);

        Intent launchingIntent = getIntent();
        String content = launchingIntent.getData().toString();

        ArticleViewerFragment viewer = (ArticleViewerFragment) getSupportFragmentManager()
                .findFragmentById(R.id.articleview_fragment);

        viewer.updateUrl(content);
    }
}

et voici mon Fragment

public class ArticleViewerFragment extends Fragment {

    private ProgressDialog progressBar; 

    private WebView viewer = null;

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
            Bundle savedInstanceState) {
        viewer = (WebView) inflater.inflate(R.layout.webview_layout, container, false);
        viewer.loadUrl("file:///android_asset/default.html");
        return viewer;
    }

    public void updateUrl(String newUrl) {
        if (viewer != null) {
            viewer.loadUrl(newUrl);
        }
    }
}

OriginalL'auteur Byron | 2012-04-23