1. 创建taskMemoryUtils, 在工具类中创建am, 通过am获取正在运行的进程的个数、可用内存空间大小、总内存空间大小
2. 创建javaBean
3. 创建javaBen数据访问类, 在TaskInfoprovider类中创建javaBen数据访问方法, 在方法中创建ap,pm 初始化javaBean内的属性值, 并将javaBean装载在集合中, 并返回该集合
4. 在TaskManagerActivity中, filldate到内存(集合中); 然后通知handler跟新界面(给listView创建适配器)
5. 给listView中的条目设置setOnItemClickListener();在点击事件的方法中如果需要获取item容器中的javaBean; 重写适配器中的getItem()方法, 初始化条目中的javaBean, 返回javaBean让 setOnItemClickListener();接收
6.在全选,取消全选, 反选的方法中, 改变了集合中javaBean的的属性值, 则集合中数据要和listView中的数据同步; 刷新界面 adapter.notifyDataSetChanged(); //刷新界面
public
class
TaskManagerActivity
extends
Activity {
private
TextView
tv_process_count
;
private
TextView
tv_mem_info
;
private
ListView
lv_task_manage
;
private
LinearLayout
task_loading
;
private
long
availMem
;
private
long
totalMem
;
private
TaskInfoBean
taskInfoBean
;
private
List<TaskInfoBean>
allTaskInfos
;
private
List<TaskInfoBean>
userTaskInfos
;
private
List<TaskInfoBean>
sysTaskInfos
;
private
MyAdapter
adapter
;
/**
* 创建消息机制
*/
private
Handler
handler
=
new
Handl er(){
@Override
public
void
handleMessage(Message msg) {
super
.handleMessage(msg);
task_loading
.setVisibility(View.
GONE
);
//加载界面不可见
adapter
=
new
MyAdapter();
lv_task_manage
.setAdapter(
adapter
);
}
};
@Override
protected
void
onCreate(Bundle savedInstanceState) {
super
.onCreate(savedInstanceState);
setContentView(R.layout.
activity_task_manage
);
//找到关心的控件
tv_process_count
=(TextView) findViewById(R.id.
tv_process_count
);
tv_mem_info
=(TextView) findViewById(R.id.
tv_mem_info
);
lv_task_manage
=(ListView) findViewById(R.id.
lv_task_manage
);
task_loading
=(LinearLayout) findViewById(R.id.
task_loading
);
//给关心的控件赋值
tv_process_count
.setText(
"正在运行进程:"
+TaskMemoreryUtis.getRuingProcessCount (
this
)+
"个"
);