我有一个用JSON检索项目列表的ListView,我想在项目点击时显示一个ProgressDialog。
listNews.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View v, int position,
long arg3) {
ProgressDialog dialog;
dialog = ProgressDialog.show(v.getContext(), "Please wait..", "Loading data", true);
dialog.setCancelable(false);
dialog.show();
News n = (News)listNews.getItemAtPosition(position);
Intent myIntent = new Intent(v.getContext(), SingleActivity.class);
myIntent.putExtra("actu_id", n.ID);
dialog.dismiss();
startActivityForResult(myIntent, 0);
}
});ProgressDialog未显示...当我在SingleActivity.class中的OnCreate中定义此progressDialog时,也会出现同样的问题
你能帮我吗?
对不起,我的英语...
发布于 2011-11-27 06:42:29
这是一个与您的工作流程相关的问题。因为您在UI线程上执行额外的任务,所以不会显示ProgressDialog。
您应该创建一个线程来执行额外的工作,然后关闭对话框,并使用runOnUiThread()或处理程序启动新的意图。
不过,最好的选择是使用AsyncTask,显示您的ProgressDialog onPreExecute(),在doInBackground()中完成您的工作,然后关闭它onPostExecute()并启动您的新活动。
发布于 2011-11-27 05:42:49
我想是因为你马上就否定了它。
https://stackoverflow.com/questions/8281835
复制相似问题