1.设置布局文件
<?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/ProgressBar"
style="?android:attr/progressBarStyleHorizontal"
android:layout_width="200dp"
android:layout_height="wrap_content"
android:visibility="gone"
/>
<Button
android:id="@+id/Button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="开始"/>
</LinearLayout>
2.处理progressbar的类
public class ProgressBarTestActivity extends Activity {
/** Called when the activity is first created. */
private ProgressBar bar;
private Button startButton;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
// 得到ProgressBar
bar = (ProgressBar) findViewById(R.id.ProgressBar);
startButton = (Button) findViewById(R.id.Button);
// 当按钮按下时开始执行
startButton.setOnClickListener(new ButtonListener());
}
class ButtonListener implements OnClickListener {
public void onClick(View v) {
bar.setVisibility(View.VISIBLE);
updateBarHandler.post(updateThread);
}
}
Handler updateBarHandler = new Handler() {
@Override
public void handleMessage(Message msg) {
bar.setProgress(msg.arg1);
updateBarHandler.post(updateThread);
}
};
Runnable updateThread = new Runnable() {
int i = 0;
public void run() {
System.out.println("begin thread");
i = i + 10;
// 得到一个消息对象
Message msg = updateBarHandler.obtainMessage();
msg.arg1 = i;
try {
Thread.sleep(1000);
} catch (Exception e) {
e.printStackTrace();
}
updateBarHandler.sendMessage(msg);
if (i == 100) {
updateBarHandler.removeCallbacks(updateThread);
}
}
};
}
效果如图:
- 大小: 10.8 KB
分享到:
相关推荐
一个简单的小例子,用来学习android Handler和ProgressBar的用法
www.mars-droid.com/Android开发视频教程 代码 源码 mars老师讲课 android 视频源码 Handler ProgressBarHandler(在此特别感谢mars的无私奉献,此代码为跟随视频边学边做的)
使用handler传递ProgressBar的进度,使进度条每一秒更新一次
使用了handler消息机制,显示进度条中进度和数值的变化。
3) Service使用ProgressBar,使用Handler调用主线程的资源 2、主线程使用ProgressDialog进行显示 3、启动Service,然后创建AlertDialog.build创建,确认后跳转到Activity,再动态生成ProgressBar 备注: Service...
Android中Handler的学习实例,在本示例中,在主线程外开启子线程(使用匿名内部类Runnable),使用Handler中的Message传递消息(高效),操作一个ProgressBar的进度。适合初学者学习和了解Handler以及ProgressBar的...
Android使用Handler控制Progressbar的一个简单例程,适合初学者
ASP.NET实现进度条上传文件源码 源码说明 ...ProgressHandler目录下三个文件为Abort.ashx、GenericGuid.ashx,Handler.ashx功能分别为:根据Guid取消正在上传的文件,生成Guid,根据Guid获取上传信息。
* 该Demo涉及了BaseAdapter,ProgressBar,Handler,Thread,线程池; * * Android-扩展BaseAdapter实现progressBar下载 * 1.创建listview的xml * 2.创建listview中填充的xml * 3.创建继承BaseAdapter的...
在进行UI界面设计时,我们常用到进度条来设计加载进度、下载进度等,本节就使用Android中ProgressBar来进行进度设计,本节的进度设计简单使用了Handler-Looper机制,读者不必纠结于这个,Handler-Looper机制我们在...
示例处理程序此示例使用 Handler 类实现 ProgressDialog 和 ProgressBar。 ProgressDialog 使用 View.post() 方法。 在 ProgressBar 中使用了 handleMessage() 方法和 sendMessage() 方法。 结果是相同的,但它们是...
ProgressBar进度条,分为旋转进度条和水平进度条,进度条的样式根据需要自定义,之前一直不明白进度条如何在实际项目中使用,网上演示进度条的案例大多都是通过Button点击增加、减少进度值,使用方法...
ProgressBar类的使用非常简单,只需将其显示到前台,然后启动一个后台线程定时更改表示进度的数值即可。 以下ProgressBar跟Handle结合,模拟进度条的使用,当进度条完成时会跳转到TestActivity main.xml布局文件 &...
在android中会经常用到ProgressBar,下面通过举例来说明如何使用ProgressBar。 import android.app.Activity; import android.os.Bundle; import android.os.Handler; import android.os.Message; import android....
在程序需要时间执行任务的时候,提示进度条友好的告诉用户说,当前任务还没有完成,请稍稍等待,进度条经常使用在APP下载应用、更新应用、加载网络数据中,使用频繁,常见的进度条有ProgressDialog、ProgressBar,...
import android.os.Handler; import android.os.Message; import android.os.StrictMode; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android....
下载apk应用,用handler显示ui界面,界面用progressbar显示百分比
本篇文章主要介绍了android中实现OkHttp下载文件并带进度条,OkHttp是比较火的网络框架,它支持同步与异步请求,支持缓存,可以拦截,更方便下载大文件与上传文件的操作,有兴趣的可以了解一下
6.20 ProgressBar进度条的使用 6.21 RatingBar评分控件的使用 6.22 ScrollView垂直滚动控件的使用 6.23 HorizontalScrollView水平滚动 6.24 Gallery画廊控件 6.25 Spinner下拉列表控件 6.26 ImageSwitcher图片切换...
优化了UI,综合运用了seletor,handler,thread,adapter,progressbar,sharedpreference,文件读写,坐标换算,onTouch事件监听处理,重写view实现灰色蒙板等效果(没有做多点触屏因为太麻烦了)等,对新人系统运用安卓...