gpt4 book ai didi

android - 如何在检索 ListView 的项目时显示 "Loading..."文本

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:01:01 26 4
gpt4 key购买 nike

还有其他一些应用程序在执行此操作,例如 Twitter、Facebook,甚至是 Android Market 等 native 应用程序。当您想要显示从 Internet 检索到的项目列表时,这看起来像是向用户显示有关正在进行的操作的一些通知的标准方式。这是一个带有动画纺车和“正在加载...”文本的白色背景屏幕。

有人知道怎么做吗?

我已经能够用这段代码做一些类似的事情,但我还不太喜欢它。仍在进行中:

<ListView android:id="@+id/post_list" 
android:layout_width="fill_parent"
android:layout_height="wrap_content"/>

<TextView android:id="@android:id/loading"
android:background="@color/white"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:gravity="center" android:text="Loading..." />

最佳答案

这是在 AsyncTask 的帮助下完成的(智能后台线程)和 ProgressDialog

当 AsyncTask 启动时,我们会重新生成一个状态不确定的进度对话框,一旦任务完成,我们就会关闭该对话框。

示例代码
在此示例中适配器做什么并不重要,重要的是要了解您需要使用 AsyncTask 来显示进度对话框。

private class PrepareAdapter1 extends AsyncTask<Void,Void,ContactsListCursorAdapter > {
ProgressDialog dialog;
@Override
protected void onPreExecute() {
dialog = new ProgressDialog(viewContacts.this);
dialog.setMessage(getString(R.string.please_wait_while_loading));
dialog.setIndeterminate(true);
dialog.setCancelable(false);
dialog.show();
}
/* (non-Javadoc)
* @see android.os.AsyncTask#doInBackground(Params[])
*/
@Override
protected ContactsListCursorAdapter doInBackground(Void... params) {
cur1 = objItem.getContacts();
startManagingCursor(cur1);

adapter1 = new ContactsListCursorAdapter (viewContacts.this,
R.layout.contact_for_listitem, cur1, new String[] {}, new int[] {});

return adapter1;
}

protected void onPostExecute(ContactsListCursorAdapter result) {
list.setAdapter(result);
dialog.dismiss();
}
}

关于android - 如何在检索 ListView 的项目时显示 "Loading..."文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3333881/

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