0

我正在构建一个新闻应用程序,我不想在 ListView 仍在加载时立即显示主要活动,因为我创建了一个启动活动。但是现在我不知道如何检查加载何时完成,但后来我有了一个想法,我可以从启动活动中以某种方式检查主活动中的 ListView 是否为空吗?

public class Init extends Activity {
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        requestWindowFeature(Window.FEATURE_NO_TITLE);
        getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
        setContentView(R.layout.init);

        WebView loader = (WebView) findViewById(R.id.loader);
        loader.loadUrl("file:///android_asset/index.html");
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.activity_main, menu);
        return true;
    }
}
4

2 回答 2

1

使用异步任务

创建一个启动屏幕,它调用异步任务。异步任务应该下载新闻项目。调用 onPostExecute 时转移到主视图并填充列表框...

我想这具有显示进度(onProgressUpdate 和 publishProgress)的优势 - 即,如果您查看多个数据源,并且有一个 onPostExecute 方法来确定下载何时完成......

您也可以取消异步任务...

认为满足您的需求...

于 2012-08-27T18:58:48.427 回答
0

Are you also looking for when the page has finished downloading? If so, create a WebViewClient subclass, attach it to your WebView, and handle the override onPageFinished().

于 2012-08-27T20:47:28.340 回答