色yeye在线视频观看_亚洲人亚洲精品成人网站_一级毛片免费播放_91精品一区二区中文字幕_一区二区三区日本视频_成人性生交大免费看

當前位置:首頁 > 嵌入式培訓 > 嵌入式學習 > 講師博文 > 安卓開發(fā)中實用的例子

安卓開發(fā)中實用的例子 時間:2018-09-21      來源:未知

我們在實際開發(fā)中經(jīng)常會需要按鍵,但是如果像平時使用OnClickListener 來監(jiān)聽的話,其實是不能滿足我們的需求的,比如要做一個按鍵的秒表app,按下開始計時,放開停止計時,如果用上面的OnClickListener監(jiān)聽器來監(jiān)聽,只能監(jiān)聽到按鍵抬起時的動作,那么按下抬起動作分開監(jiān)聽的話如何實現(xiàn),這里作者自己實現(xiàn)的一個方法,大家可以參考。

Java Code

textView = (TextView) findViewById(R.id.textView1);

button = (Button) findViewById(R.id.button1);

ButtonListener b = new ButtonListener();

button.setOnClickListener(b);

button.setOnTouchListener(b);

handler = new Handler()

{

@Override

public void handleMessage(Message msg)

{

// TODO Auto-generated method stub

super.handleMessage(msg);

if(msg.what == 0x1234)

{

textView.setText("計時:" + msg.obj + " 秒");

}

}

};

這里我們利用內(nèi)部類去從寫了兩個監(jiān)聽器里的方法,以便比較,一個是上面所講的OnClickListener,另一個是實現(xiàn)我們監(jiān)聽按下抬起兩個動作的OnTouchListener,內(nèi)部類的代碼如下:

Java Code

class ButtonListener implements OnClickListener, OnTouchListener

{

public void onClick(View v)

{

if(v.getId() == R.id.button1)

{

Log.d("test", "cansal button ---> click");

Toast tst = Toast.makeText(MainActivity.this, "33333333",

Toast.LENGTH_SHORT);

tst.show();

}

}

public boolean onTouch(View v, MotionEvent event)

{

if(v.getId() == R.id.button1)

{

if(event.getAction() == MotionEvent.ACTION_DOWN) //判斷動作,如果是按下的話,置位標志位,開啟線程

{

state = true;

new MyThread().start();

}

if(event.getAction() == MotionEvent.ACTION_UP) //如果是抬起,則將標志位復位,使線程退出

{

state = false;

}

}

return false;

}

}

因為這里我們要實現(xiàn)一個按下開始計時,抬起停止計時功能,所以計時功能需要在一個線程里去實現(xiàn),這里使用handler-message實現(xiàn),方法如下:

Java Code

class MyThread extends Thread

{

@Override

public void run()

{

// TODO Auto-generated method stub

super.run();

while(state)

{

try

{

Thread.sleep(1000);

}

catch (InterruptedException e)

{

// TODO Auto-generated catch block

e.printStackTrace();

}

Message message = new Message();

message.what = 0x1234;

message.obj = count++;

handler.sendMessage(message);

//handler.sendEmptyMessage(0x1234);

}

}

}

線程里1秒count加一次,并將count數(shù)字傳到handler中,去更新textview內(nèi)容,此方法穩(wěn)定可行,系統(tǒng)資源占用少,用在其他項目中有不錯的效果。

運行結(jié)果:

按下時

抬起時

上一篇:Logo

下一篇:智能手環(huán)客戶端詳細設計

熱點文章推薦
華清學員就業(yè)榜單
高薪學員經(jīng)驗分享
熱點新聞推薦
前臺專線:010-82525158 企業(yè)培訓洽談專線:010-82525379 院校合作洽談專線:010-82525379 Copyright © 2004-2022 北京華清遠見科技集團有限公司 版權(quán)所有 ,京ICP備16055225號-5京公海網(wǎng)安備11010802025203號

回到頂部

主站蜘蛛池模板: 国产精品人妻无码久久久郑州 | 国产精品18久久久久久欧美网址 | 三年片在线观看大全有哪些爱奇艺 | 亚洲精品高清国产一久久 | 天堂中文www | 高中生自慰WWW网站 国产日韩在线时看高清视频 | 在线视频偷国产精品 | 在线观看免费AV无码不卡 | 亚洲国产成人精品青青草原 | 亚洲 丝袜 另类 校园 欧美 | 中日无线码1区 | 69re视频| 久久精品国产久精国产一老狼 | 欧洲免费vps一级毛片 | 日产国产精品亚洲系列 | 边喂奶边中出中文字幕 | 成人午夜福利院在线观看 | 日韩在线中文高清在线资源 | 国产精品27页在线观看 | av网站不卡 | 亚洲av美国av产亚洲av | 一本大道久久a久久精二佰 亚洲AV色香蕉一区二区蜜桃 | 亚洲 国产 日韩 欧美 | 色综合天天综合网国产成人网 | 看黄网站在线观看 | 伊人久久大香线蕉亚洲 | 91网站在线播放 | 欧美日韩精品 | 天天摸天天做天天爽天天舒服 | 办公室揉弄高潮嗯啊免费视频 | 亚洲自偷自偷在线制服 | 未禁18成禁人免费无遮挡 | 日本在线视频二区 | 办公室强伦片免费看 | 内射人妻深入内射 | 国产乱人伦精品一区二区三区 | 亚洲一区二区免费在线 | 黄色大片在线免费观看 | 免费岛国片 | 欧美精品国外破除大片扒开特写 | 特级黄WWW欧美水蜜桃视频 |