Android学习笔记:进度条ProgressBar和线程
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Android学习笔记:进度条ProgressBar和线程,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含3469字,纯文字阅读大概需要5分钟。
内容图文
ProgressBar是进度条,android中的指示器,先看效果图
上图中水平进度条可以看见有两种颜色,浅色的是SecondaryProgress,可以用作展示中间进度用。
ProgressBar是有多种样式的,有水平的和圆圈打转的。若需要指示进度的可以使用水平的,其他样式在可以在android api文档找到
Other progress bar styles provided by the system include:
先看下布局文件activity_main.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" tools:context="com.jam.testprogressbar.MainActivity" > <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/hello_world" /> <ProgressBar android:id="@+id/id_firstbar_id" android:layout_width="150dp" android:layout_height="wrap_content" style="@android:style/Widget.ProgressBar.Horizontal" android:visibility="gone" /> <ProgressBar android:id="@+id/id_spinningbar_id" android:layout_width="150dp" android:layout_height="wrap_content" android:visibility="gone"/> <Button android:id="@+id/id_buttonfirst" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="addfirst"/> <Button android:id="@+id/id_buttonsecond" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="addsecond"/> </LinearLayout>
布局简单,若要修改ProgressBar,只需要改style的内容即可。
然后是MainActivity.java 的内容:
package com.jam.testprogressbar; import android.app.Activity; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.ProgressBar; public class MainActivity extends Activity { //声明控件 private ProgressBar firstProgressBar; private ProgressBar secondProgressBar; private Button buttonFirst; private Button buttonSecond; private int i = 0; private int j = 0; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); firstProgressBar = (ProgressBar) findViewById(R.id.id_firstbar_id); secondProgressBar = (ProgressBar) findViewById(R.id.id_spinningbar_id); buttonFirst = (Button) findViewById(R.id.id_buttonfirst); buttonSecond = (Button) findViewById(R.id.id_buttonsecond); /** * 给第一个按钮绑定匿名内部类 * 在i==0时,显示两个ProgressBar * i《100 时,每按一次就加10。 * 当i超过100,则隐藏两个ProgressBar */ buttonFirst.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { if(i == 0) { firstProgressBar.setVisibility(View.VISIBLE); secondProgressBar.setVisibility(View.VISIBLE); i += 10; j = i; firstProgressBar.setProgress(i); firstProgressBar.setSecondaryProgress(j); } else if( i < 100){ i += 10; j = i; firstProgressBar.setProgress(i); } else { i = 0; j = i; firstProgressBar.setVisibility(View.GONE); secondProgressBar.setVisibility(View.GONE); } } }); /** * 第二个按钮,对SecondaryProgress进行设置。 */ buttonSecond.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { if(i != 0) { j += 10; firstProgressBar.setSecondaryProgress(j); } } }); } }
实现进度条代码比较简单,在api文档中有例子和其他具体方法,不一一介绍。
注意:在原则上来说,除主线程之外,其他线程不允许访问主线程的UI,但ProgressBar除外
原文:http://imjam.blog.51cto.com/9871131/1652089
内容总结
以上是互联网集市为您收集整理的Android学习笔记:进度条ProgressBar和线程全部内容,希望文章能够帮你解决Android学习笔记:进度条ProgressBar和线程所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。