
?
實(shí)現(xiàn)過(guò)程的主要代碼:
-
Click事件中 ?
case
?
R.id.
add
:
?????????????????????Person ? person = new ? Person();????????????????????? person . name = name .getText().toString();????????????????????? person . age =Integer. valueOf ( age .getText().toString());????????????????????? Map ? param= new ? HashMap ();????????????????????? param.put( "person" , ? person ) ;????????????????????? task ? = ? new ? Task(Config. TASK_ADD , param);?????????????????????MainService. addNewTask ( task );????????????????????? break ;?????????????? case ? R.id. query :???????????????????????????????? task ? = ? new ? Task(Config. TASK_QUERY , ? null );?????????????????????MainService. addNewTask ( task );????????????????????? break ;
-
開(kāi)始執(zhí)行任務(wù)?
public
?
static
?
void
?
addNewTask(
final
?
Task ts) {
?????????????? new ? Thread() {????????????????????? public ? void ? run() {??????????????????????????? mainService .doTask(ts);?????????????????????}??????????????}.start();???????}
??????? public ? void ? doTask(Task task) {?????????????? if ? (task == ? null )????????????????????? return ;?????????????? Map ? param = task.getTaskParam();?????????????? ArrayList ? list = ? new ? ArrayList<Object>();??????????????Message message = ? handler .obtainMessage();?????????????? int ? taskid = task.getTaskID();?????????????? switch ? (taskid) {?????????????? case ? Config. TASK_ONE :?????????????????????String test = ? "test" ;?????????????????????message. obj ? = test;????????????????????? break ;?????????????? case ? Config. TASK_ADD :????????????????????? personService .insertPerson((Person)param.get( "person" ));????????????????????? break ;?????????????? case ? Config. TASK_QUERY :?????????????????????list= personService .getPersonList();?????????????????????message. obj ? = list;????????????????????? break ;??????????????}??????????????message. what ? = task.getTaskID();?????????????? handler .sendMessage(message);???????}
??????? -
PersonService介紹 ,實(shí)現(xiàn)增加和查詢(xún)的功能
public
?
ArrayList<Person> getPersonList() {
??????????????Cursor cursor = ? dbHelper .query( dbHelper . TB_PERSON , ? new ? String[] { ? "_id" ,??????????????????????????? "name" , ? "age" ? }, ? null , ? null , ? null , ? null , ? null , ? null );??????????????ArrayList<Person> list = ? new ? ArrayList<Person>();?????????????? while ? (cursor.moveToNext()) {?????????????????????Person person = ? new ? Person();?????????????????????person. id ? = cursor.getInt(0);?????????????????????person. name ? = cursor.getString(cursor.getColumnIndex( "name" ));?????????????????????person. age =cursor.getInt(2);?????????????????????list.add(person);??????????????}??????????????cursor.close();?????????????? return ? list;???????}public ? void ? insertPerson(Person person) {??????????????ContentValues cv = ? new ? ContentValues();??????????????cv.put( "name" , person. name );??????????????cv.put( "age" , person. age );?????????????? dbHelper .insert( dbHelper . TB_PERSON , cv);???????}
- 返回?cái)?shù)據(jù)給activity? ?
??????????????
@Override
??????????????
public
?
void
?
handleMessage(Message msg) {
?????????????????????
super
.handleMessage(msg);
?????????????????????IActivity ac =
?
null
;
?????????????????????String activityName =
?
""
;
?????????????????????
switch
?
(msg.
what
) {
?????????????????????
case
?
Config.
TASK_ONE
:
???????????????????????????activityName =
?
"AndroidTaskActivity"
;
???????????????????????????
break
;
?????????????????????
case
?
Config.
TASK_QUERY
:
???????????????????????????activityName =
?
"AndroidTaskActivity"
;
???????????????????????????
break
;
?????????????????????}
?????????????????????ac = MainService.
getActivityByName
(activityName);
?????????????????????ac.refresh(msg.
what
, msg.
obj
);
??????????????}
???????};
? ? ?
- 顯示在當(dāng)前activity
??????????????
int
?
flag = (Integer) param[0];
??????????????
switch
?
(flag) {
??????????????
case
?
Config.
TASK_ONE
:
?????????????????????String str = (String) param[1];
?????????????????????
et
.setText(str);
?????????????????????
break
;
??????????????
case
?
Config.
TASK_QUERY
:
?????????????????????
ArrayList
?
ls=
new
?
ArrayList
();
?????????????????????ls=(
ArrayList
) param[1];
?????????????????????Person P=
new
?
Person();
?????????????????????P=(Person) ls.get(1);
?????????????????????
et
.setText(
"name:? "
+P.
name
+
"? age:? "
+P.
age
+
"? id:? "
+P.
id
);
?????????????????????
break
;
??????????????
?????????????????????
??????????????}
???????}
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號(hào)聯(lián)系: 360901061
您的支持是博主寫(xiě)作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對(duì)您有幫助就好】元
