Android中进度条ProgressBar的使用
来源:互联网 发布:写真软件有哪些 编辑:程序博客网 时间:2024/04/24 15:07
1.环形进度条的使用
这种进度条无法显示进度,显示为一个不断旋转的环形,可以通过设置其可见性来使用,这种进度条只需要添加其控件即可
- 大的环形进度条
<ProgressBar style="?android:attr/progressBarStyleLarge" android:layout_width="wrap_content" android:layout_height="wrap_content" />
- 正常大小的环形进度条
<ProgressBar android:layout_width="wrap_content" android:layout_height="wrap_content" />
- 小的环形进度条
<ProgressBar style="?android:attr/progressBarStyleSmall" android:layout_width="wrap_content" android:layout_height="wrap_content" />
2.使用水平进度条
第一个进度条使用默认的外观,第二个使用自定义的外观,设置其最大值为100,并在代码中创建一个Handler来负责更新进度
- 布局中加入控件
<!--默认外观的控件--> <ProgressBar style="?android:attr/progressBarStyleHorizontal" android:layout_width="match_parent" android:layout_height="wrap_content" android:max="100" android:id="@+id/progressBar" /> <!--使用自定义外观的控件--> <ProgressBar style="?android:attr/progressBarStyleHorizontal" android:layout_width="match_parent" android:layout_height="wrap_content" android:max="100" android:progressDrawable="@drawable/my" android:id="@+id/progressBar2" />
- Activity代码文件
public class MainActivity extends AppCompatActivity { private int[] data = new int[100]; int hasData = 0; //记录ProgressBar的完成进度 int status = 0; ProgressBar bar,bar2; //创建一个负责更新进度条的Handler Handler handler = new Handler(){ @Override public void handleMessage(Message msg) { if (msg.what == 0x111) { bar.setProgress(status); bar2.setProgress(status); } } }; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); bar = (ProgressBar) findViewById(R.id.progressBar); bar2 = (ProgressBar) findViewById(R.id.progressBar2); //启动线程来执行任务 new Thread(){ public void run(){ while (status < 100) { //获取耗时操作完成的百分比 status = doWork(); //发送消息 handler.sendEmptyMessage(0x111); } } }.start(); } //模拟耗时的操作 public int doWork(){ data[hasData++] = (int) (Math.random() * 100); try { Thread.sleep(100); } catch (InterruptedException e) { e.printStackTrace(); } return hasData; }}
3.使用标题栏进度条
调用Activity的requestWindowFeature()方法,根据传入的参数可以启用特定的窗口特征(需要放在setContentView()方法之前)
- 使用显示进度的进度条
//设置窗口特征,启用显示进度的进度条 requestWindowFeature(Window.FEATURE_PROGRESS); //设置进度 setProgress(4500);
- 使用不显示进度的进度条
//设置窗口特征,启用不显示进度的进度条 requestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS); //设置进度 setProgress(4500);
0 0
- Android中进度条ProgressBar的使用
- Android ProgressBar进度条的使用
- Android ProgressBar进度条的使用
- Android progressbar 进度条的使用
- Android中使用ProgressBar实现进度条
- Android中ProgressBar进度条
- Android---30---ProgressBar进度条的使用
- Android学习--ProgressBar进度条的使用
- Android-ProgressBar进度条以及对话框的使用
- java swing中ProgressBar(进度条)的使用
- progressbar 进度条的使用
- Android进度条ProgressBar使用详解
- Android之ProgressBar进度条使用
- Android ProgressBar(进度条)的使用方法
- Android ProgressBar进度条的创建
- wpf 进度条 ProgressBar的使用
- 02.进度条progressBar的使用
- android中ProgressBar的使用
- 插件化研究之Activity注册
- 广告轮播实现(ViewPager的实现)
- java中的FileInputStrem
- Lua笔记18 面向对象类 self和this
- Hello CSDN
- Android中进度条ProgressBar的使用
- malloc vs new
- 数据结构算法 (一)
- iOS 正则表达式的使用 —— HERO博客
- lightoj - 1105 - Fi Binary Number - 数位dp
- Java程序之飞机大战
- hdu 2066 一个人的旅行(最短路+SPFA)
- Nagios Fusion-FAQs
- Java编程基础_为什么要设置Java环境变量(详解)