花样Android_ProgressBar_史上最强大讲解.doc

### 花样Android_ProgressBar_史上最强大讲解 #### 进度条(ProgressBar)概述 在Android开发中,`ProgressBar`是一种常见的UI组件,用于显示任务或操作的完成进度。这种组件对于提升用户体验至关重要,尤其是在后台处理或等待服务器响应等场景下。本文将详细介绍不同类型的`ProgressBar`及其在Android应用中的实现方式。 #### 基本概念 `ProgressBar`有两种基本形式:确定性(Deterministic)和不确定性(Indeterminate)。确定性的`ProgressBar`能够显示具体的进度值,而不确定性的则以循环动画的形式展示进度状态,常用于无法预知操作完成时间的情况。 #### 不同类型的`ProgressBar` ### 圆形`ProgressBar` 圆形`ProgressBar`是最常见的类型之一,通常用于表示正在进行的任务,如发送短信、加载数据等。它可以按照不同的尺寸和样式来定义。 #### 普通圆形`ProgressBar` 这是最基本的圆形`ProgressBar`,没有额外的样式设定,通常表现为一个持续旋转的圆环。在XML布局文件中定义如下: ```xml <ProgressBar android:id="@+id/widget43" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_vertical" /> ``` #### 各大小样式的圆形`ProgressBar` - **超大号圆形`ProgressBar`** 通过设置`style="?android:attr/progressBarStyleLarge"`,可以得到一个更大的圆形`ProgressBar`。在XML布局文件中的定义如下: ```xml <ProgressBar android:id="@+id/widget196" android:layout_width="wrap_content" android:layout_height="wrap_content" style="?android:attr/progressBarStyleLarge" /> ``` - **小号圆形`ProgressBar`** 设置`style="?android:attr/progressBarStyleSmall"`,即可获得一个小尺寸的圆形`ProgressBar`。在XML布局文件中的定义如下: ```xml <ProgressBar android:id="@+id/widget108" android:layout_width="wrap_content" android:layout_height="wrap_content" style="?android:attr/progressBarStyleSmall" /> ``` - **标题型圆形`ProgressBar`** 当需要为`ProgressBar`添加标题时,可以使用`style="?android:attr/progressBarStyleSmallTitle"`。在XML布局文件中的定义如下: ```xml <ProgressBar android:id="@+id/widget110" android:layout_width="wrap_content" android:layout_height="wrap_content" style="?android:attr/progressBarStyleSmallTitle" /> ``` ### 长形`ProgressBar` 除了圆形`ProgressBar`外,还可以使用长形`ProgressBar`来显示进度。这种类型的`ProgressBar`通常用于更直观地展示进度百分比。 #### 在布局中定义长形`ProgressBar` 定义长形`ProgressBar`时,可以通过设置`android:layout_width`属性来控制其宽度,从而适应不同的布局需求。示例代码如下: ```xml <ProgressBar android:id="@+id/progressbar_updown" android:layout_width="200dp" android:layout_height="wrap_content" style="?android:attr/progressBarStyleHorizontal" /> ``` 在上述示例中,通过设置`style="?android:attr/progressBarStyleHorizontal"`指定了这是一个水平方向的长形`ProgressBar`。 ### 代码中实现`ProgressBar` 除了在XML布局文件中定义`ProgressBar`外,还可以通过Java代码动态控制`ProgressBar`的可见性和进度。 ```java @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); requestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS); setContentView(R.layout.second); setProgressBarIndeterminateVisibility(true); } ``` 在上述示例代码中,通过调用`requestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS)`请求窗口特征,并通过`setProgressBarIndeterminateVisibility(true)`设置顶部标题栏中的不确定进度条是否可见。 #### 总结 本文详细介绍了Android中`ProgressBar`的基本概念、不同类型的`ProgressBar`及其定义方法,以及如何在代码中控制`ProgressBar`的行为。通过这些知识点的学习,开发者可以更好地利用`ProgressBar`组件来提升应用程序的用户体验。






























剩余20页未读,继续阅读

- xuzuoyang2015-04-28内容有点过时了。。

- 粉丝: 59
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- SIMOTION通过代理与COMFORT屏进行通信
- ascendc-api-adv-硬件开发资源
- tpframe-移动应用开发资源
- maku-admin-Typescript资源
- Kook.Net-C#资源
- EasyTask-PHP资源
- js-screen-shot-JavaScript资源
- Yearning-SQL资源
- ncre2c-计算机二级资源
- Friday-毕业设计资源
- acm官网-ACM资源
- Mathematical Modeling-美赛资源
- rk2206-智能车资源
- lanqiao-蓝桥杯资源
- 数学建模和机器学习/深度学习/大模型的笔记和资料(持续更新中......)
- 李宏毅:一天时间轻松搞懂深度学习(中文翻译版)


