- 浏览: 547472 次
- 性别:
- 来自: 武汉
文章分类
最新评论
-
北月与南安:
哥哥不要秀我,答案是11.38,你算出来36.43,要求N个点 ...
平均距离 -
xiao_android_jun:
[color=red][ size=xx-small ...
Android 之 进程的概念介绍 -
明子健:
小伙子,很有前途哦
《将博客搬至CSDN》 -
1140566087:
dugujiujian 写道R.layout.simple_s ...
Android 之 下拉(Spinner) 组件示例 -
dugujiujian:
R.layout.simple_spinner_dropdow ...
Android 之 下拉(Spinner) 组件示例
布局文件:
主程序入口:
和 Handler的用法:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" > <!-- 定义 ProgresBar组件 style="?android:attr/progressBarStyleHorizontal" :设置进度条为水平进度条 --> <ProgressBar android:id="@+id/progressbar" android:layout_width="fill_parent" android:layout_height="wrap_content" style="?android:attr/progressBarStyleHorizontal" android:layout_margin="10px" /> <Button android:id="@+id/download" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="下载" /> <TextView android:id="@+id/title" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/hello_world" /> </LinearLayout>
主程序入口:
package com.example.progressbar; import java.util.Timer; import java.util.TimerTask; import org.xml.sax.HandlerBase; import android.app.Activity; import android.os.Bundle; import android.os.Handler; import android.os.Message; import android.widget.TextView; public class MainActivity extends Activity { private TextView tx; private int count = 0; // 自定义 Handler信息代码,用以作为识别事件处理 protected static final int Start_NOTIFIER=0x101; protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); tx = (TextView) findViewById(R.id.title); uppUI(); } /** * 实现 6 秒钟更新 UI 界面 TX 的显示 */ public void uppUI() { Timer timer = new Timer(); // 创建爱你Timer 时钟对象 timer.scheduleAtFixedRate(new MyShedule(), 1, 1000); //每隔 6 秒中执行 MyShedule } /** * 实现更新的动作 * @author Administrator * */ private class MyShedule extends TimerTask { public void run() { Message message = new Message(); //创建message对象 message.what = MainActivity.Start_NOTIFIER; //用于自定义消息代码,以便收件人收到信息 handler.sendMessage(message); //向Handler发送消息 } } //创建Handler 对象,通过实现handleMessage方法,接收信息 Handler handler = new Handler(){ //注意:子类必须实现这个方法才能接收信息 public void handleMessage(Message msg) { switch (msg.what) { //判断消息代码值 case MainActivity.Start_NOTIFIER: tx.setText(new Integer(count).toString()); count++; break; } } }; }
和 Handler的用法:
package com.example.progressbar; import android.app.Activity; import android.os.Bundle; import android.os.Handler; import android.os.Message; import android.view.View; import android.widget.Button; import android.widget.ProgressBar; import android.widget.TextView; public class ProgressBarAndHandler extends Activity { private TextView tx; private ProgressBar progressbar; private Button download; private int count = 0; // 自定义 Handler信息代码,用以作为识别事件处理 protected static final int STOP_Flag = 0x100; protected static final int THREADING_Flag = 0x101; protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); // 获取各种对象 tx = (TextView) findViewById(R.id.title); progressbar = (ProgressBar) findViewById(R.id.progressbar); download = (Button) findViewById(R.id.download); // 设置按钮单机事件 download.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { actionForDownload(); } }); } /** * 按钮点击动作 */ public void actionForDownload() { tx.setText(R.string.start); // 设置按钮上显示值 progressbar.setVisibility(View.VISIBLE); // 设置progressbar 为可见状态 progressbar.setMax(100); // 设置最大值为:100 progressbar.setProgress(0); // 设置当前值为0 progressbar.setIndeterminate(false); // 设置进度条为明确显示 new Thread() { public void run() { while (count <= 100) { // 小于 100 的时候修改当前进度值 try { count = count + 1; Thread.sleep(100); // 休眠 0.1秒 // 如果值累加到了 100 则,向Handler发送 STOP_Flag 消息 if (count == 100) { Message message = new Message(); message.what = ProgressBarAndHandler.STOP_Flag; // 向Handler发送信息代码 ProgressBarAndHandler.this.handler .sendMessage(message); break; } else { // 不等于 100 发送THREADING_Flag 消息 Message m = new Message(); m.what = ProgressBarAndHandler.THREADING_Flag; ProgressBarAndHandler.this.handler.sendMessage(m); } } catch (Exception ex) { ex.printStackTrace(); } } } }.start(); } // 根据消息进行对应的处理 Handler handler = new Handler() { public void handleMessage(Message msg) { switch (msg.what) { case ProgressBarAndHandler.STOP_Flag: // 表示下载完毕 tx.setText("下载完毕"); download.setText("下载完毕"); progressbar.setVisibility(View.GONE); //设置进度条不可见 Thread.currentThread().interrupt(); //中断当前线程 break; case ProgressBarAndHandler.THREADING_Flag: // 表示正在下载中 progressbar.setProgress(count); //修改当前进度的值 tx.setText(getResources().getText(R.string.start)+Integer.toString(count)+"%)\n"+"Progress:"+Integer.toString(progressbar.getProgress())); break; } super.handleMessage(msg); } }; }
- progressBar.rar (900.8 KB)
- 下载次数: 3
发表评论
-
Android 之 网络访问服务器,解析JSON数据
2014-03-28 22:50 3339提示:在访问网络,或者服务器的数据一定要注意 网络权限的声明: ... -
Android 之 AsyncTask 异步任务
2014-03-20 08:44 3478Android ... -
Android 之 Looper Handler Message 之间的关系
2014-03-19 10:16 3611Android 的消息 ... -
Android 之 多线程与Socket联合使用案例
2014-03-19 10:15 2603多线 ... -
Android 之 多线程和Socket套接字的使用介绍
2014-03-19 10:15 4816And ... -
Android 之 实现Runnable 接口与继承Thread的区别
2014-03-19 10:15 2152实现Runnable 接口 相 ... -
Android 之 GSON解析JSON数据
2014-03-19 10:14 4423... -
Android 之 使用Pull 解析xml文件
2014-03-18 21:04 999/** * 使用Pull进行 xml 文件的解析 ... -
Android 之 使用DOM解析xml文件
2014-03-18 21:02 2692DOM 解析 xml 格式的文件 1、 xml简介:xml ... -
Android 之 百度API 密钥安全码生成
2014-03-04 22:29 2329近期要做个关于旅游助手的应用,开始接触百度API了。大神们 ... -
Android 之 EditText属性用法介绍
2014-01-06 23:49 3946EditText的属性 EditText继承关系:View-- ... -
Android 之 自定义适配器
2014-01-08 10:40 1704自定义适配器 1、实现 * 自定义适配器要继承 BaseA ... -
Android 之 自定义控件用法介绍
2014-01-08 10:40 1681自定义效果:实现:图片和文字混合 首先创建需要组合的子布局: ... -
Android 之 资源自适应与国际化
2014-01-08 10:40 3016<!-- 国际化和资源自适应 ... -
Android 之 Parcelable 序列化
2014-01-08 10:41 2652/* 序列化 * * 作 ... -
Android 之 五大布局案例
2014-01-08 10:41 20941、LinearLayout 线性布局例子: <Lin ... -
Android 之 通知Notification
2014-03-03 22:30 3819Notification 和 NotificationMana ... -
Android 之 手机全屏显示
2014-03-03 22:30 2281/* 1、全屏状态的显示 介绍:Android 中提供了Wi ... -
Android 之 拦截手机短信并自动转发
2014-03-03 22:29 5436拦截短信和发送短信都需要相关的权限: <?xml ve ... -
Android 之 将RAW资源文件写入SD卡工具类
2014-03-01 10:09 3513package com.sun.coptfiletosd; ...
相关推荐
Android应用源码之ProgressBar 几乎全部的用法
AndroidProgressBar_Android ProgressBar进度条的几乎全部的用法源码集.rar
android ProgressBar 几乎全部的用法,适合学习练习,相当不错,相互学习
一个简单的小例子,用来学习android Handler和ProgressBar的用法
1)进度条ProgressBar使用方法 1、在layout布局文件中创建ProgressBar控件 <ProgressBar nstyle=?android:attr/progressBarStyleHorizontal android:layout_width match_parent android:layout_height=wrap_content...
主要介绍了Android中ProgressBar用法,以简单实例形式分析了Android中ProgressBar进度条控件的功能与布局相关技巧,需要的朋友可以参考下
主要介绍了Android控件之ProgressBar用法,以一个完整实例形式较为详细的分析了ProgressBar控件操作进度显示的使用技巧,具有一定参考借鉴价值,需要的朋友可以参考下
看了就知道。讲的比较全面。最少ProgressBar 部分看完后各种特殊的需求都可以开发了
Android应用源码开发Demo,主要用于毕业设计学习。
202x-4-24androidProgressBar的使用方法.pdf
Android ProgressBar 几乎全部的用法.rar
Android ProgressBar 几乎全部的用法.zip
Android ProgressBar 几乎全部的用法.zip源码资源下载Android ProgressBar 几乎全部的用法.zip源码资源下载
Android应用源码之ProgressBar 几乎全部的用法.zip项目安卓应用源码下载Android应用源码之ProgressBar 几乎全部的用法.zip项目安卓应用源码下载 1.适合学生毕业设计研究参考 2.适合个人学习研究参考 3.适合公司开发...
安卓Android源码——ProgressBar几乎全部的用法.zip
AndroidProgressBar-几乎全部的用法.zip
看到效果图可能会给人一种使用了高端技术的感觉,其实这个没有那么高深,我们只是简单改变了ProgressBar的样式即可实现,下面说说实现方式。 首先我们简单分析一下: 1 . 上面的样式只是实现了颜色渐变,但它旋转和...