【发布时间】:2016-04-23 08:14:09
【问题描述】:
我必须在优化运行的应用程序后更新列表......
m_optimizeBtn.setOnClickListener(new View.OnClickListener()
{
@Override
public void onClick(View v)
{
launchProgressRing(OptimizationActivity.this);
listAdaptor.notifyDataSetChanged();
}
});
}
在单独的线程中杀死正在运行的进程......
public void launchProgressRing(Context ctx){
final ProgressDialog opt_proDialog=new ProgressDialog(ctx);
opt_proDialog.setTitle("Please wait...");
opt_proDialog.setMessage("Optimizing power draining apps...");
opt_proDialog.setIndeterminate(true);
opt_proDialog.show();
opt_proDialog.setCancelable(false);
new Thread(new Runnable()
{
@Override
public void run()
{
//TODO: optimize apps
m_cPowerDrainingApps.killBgRunningProcesses(runningAppsList);
try
{
Thread.sleep(1500);
} catch (InterruptedException e)
{
e.printStackTrace();
}
runOnUiThread(new Runnable()
{
@Override
public void run()
{
opt_proDialog.dismiss();
}
});
}
}).start();
}
listAdaptor.notifyDataSetChanged() 不工作,不知道为什么???
【问题讨论】:
-
将您的 listview.setAdapter(您的适配器) 放入 onResume() 方法,如果不起作用,则放入您的 Activity 代码。
-
如何更改列表适配器中的数据?线程对此有什么作用吗?
-
@Pooya 。 m_cPowerDrainingApps.killBgRunningProcesses(runningAppsList) 这负责数据更改......它正在从列表中删除一些进程......
标签: java android listview arraylist