/** 反选 */ public void unSelect(View view) { for (TaskInfo info : userTaskInfos) { if (info.getPackname().equals(getPackageName())) { continue; } info.setChecked(!info.isChecked()); } for (TaskInfo info : systemTaskInfos) { info.setChecked(!info.isChecked()); } adapter.notifyDataSetChanged(); // 通知界面更新 }
/** 杀死选中的进程 */ public void killAll(View view) { int total = 0; long savedMem = 0; List<TaskInfo> killedTaskInfos = new ArrayList<TaskInfo>(); for (TaskInfo info : userTaskInfos) { if (info.isChecked()) { am.killBackgroundProcesses(info.getPackname()); total++; savedMem += info.getMemsize(); // userTaskInfos.remove(info); killedTaskInfos.add(info); } } for (TaskInfo info : systemTaskInfos) { if (info.isChecked()) { am.killBackgroundProcesses(info.getPackname()); total++; savedMem += info.getMemsize(); // systemTaskInfos.remove(info); killedTaskInfos.add(info); } } for (TaskInfo info : killedTaskInfos) { if (info.isUserTask()) { userTaskInfos.remove(info); } else { systemTaskInfos.remove(info); } } // 给用户一个土司提醒 告诉用户你干了什么事情。 Toast.makeText( this, "杀死了" + total + "个进程,释放了" + Formatter.formatFileSize(this, savedMem) + "的内存", 1) .show(); runningProcessCount -= total; availRam += savedMem; tv_process_count.setText("运行中进程:" + runningProcessCount + "个"); tv_mem_info.setText( "剩余/总内存:" + Formatter.formatFileSize(this, availRam) + "/" + Formatter.formatFileSize(this, totalRam)); adapter.notifyDataSetChanged(); }
@Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); adapter.notifyDataSetChanged(); // ---> getConut()--> getView() }