HandlerActivity.java

package txlong.handler;import android.app.Activity;import android.os.Bundle;import android.os.Handler;import android.util.Log;import android.view.View;import android.widget.Button;import android.widget.ProgressBar;public class HandlerActivity extends Activity {private Button start, end, show;private ProgressBar progress;private Handler handler = new Handler();private int tmp;@Overridepublic void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.main);start = (Button) findViewById(R.id.start);end = (Button) findViewById(R.id.end);show = (Button) findViewById(R.id.show);progress = (ProgressBar) findViewById(R.id.progress);start.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {handler.post(updateDate);}});end.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {handler.removeCallbacks(updateDate);}});show.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {progress.setVisibility(View.VISIBLE);progress.setProgress(0);handler.post(greate);}});}Runnable updateDate = new Runnable() {@Overridepublic void run() {Log.i("flag", "again");handler.postDelayed(updateDate, 3000);}};Runnable greate = new Runnable() {@Overridepublic void run() {if (progress.getProgress() < 100) {tmp += 10;progress.setProgress(tmp);progress.setSecondaryProgress(tmp + 10);handler.postDelayed(greate, 800);} else {handler.removeCallbacks(greate);progress.setVisibility(View.GONE);tmp = 0;}}};}

main.xml

<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    android:orientation="vertical"    android:layout_width="fill_parent"    android:layout_height="fill_parent"    ><ProgressBar android:id="@+id/progress"style="?android:attr/progressBarStyleHorizontal"android:layout_width="200dip"android:layout_height="wrap_content"android:visibility="gone"/><Button android:id="@+id/start"    android:layout_width="fill_parent"     android:layout_height="wrap_content"     android:text="start"    />    <Button  android:id="@+id/end"    android:layout_width="fill_parent"     android:layout_height="wrap_content"     android:text="end"    />    <Button  android:id="@+id/show"    android:layout_width="fill_parent"     android:layout_height="wrap_content"     android:text="show"    /></LinearLayout>

更多相关文章

  1. 代码中设置drawableleft
  2. android 3.0 隐藏 系统标题栏
  3. Android开发中activity切换动画的实现
  4. Android(安卓)学习 笔记_05. 文件下载
  5. Android中直播视频技术探究之—摄像头Camera视频源数据采集解析
  6. 技术博客汇总
  7. android 2.3 wifi (一)
  8. AndRoid Notification的清空和修改
  9. Android中的Chronometer

随机推荐

  1. Android(安卓)Matrix
  2. Android系列教程之八:ListView组件的使用
  3. 系出名门 Android(安卓)系列文章索引
  4. Android(安卓)使用NDK R5开发JNI应用详解
  5. 教你如何创建类似QQ的android弹出菜单
  6. Android(安卓)SDK 2.3与Eclipse最新版开
  7. Android(安卓)SDK下载技巧
  8. android TextView属性大全
  9. Android中widget组件的开发流程
  10. Android使用service后台更新计划任务