Android开发:ProgressBar,RatingBar控件简单用法

文章参考:课堂教学及《第一行代码》

ProgressBar

ProgressBar进度条
progress进度 bar条 所以总的叫做进度条

进度条的简单几种显示模式

在这里插入图片描述

  • 其中第一个是模糊模式图形,看不到加载的数据,但是能看到他正在加载。
  • 第二个为精确显示的图形,能够看到它的加载显示。

ProgressBar的XML属性

XML属性 解释
android:min 设置该进度条最小值
android:max 设置该进度条的最大值
android:progress 设置该进度条当前值
style 设置显示样式

范例:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    >
    <ProgressBar
        android:id="@+id/prg1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:min="0"
        android:max="100"
        android:progress="30"
        />
    <ProgressBar
        android:id="@+id/prg2"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="20dp"
        android:layout_marginBottom="20dp"
        style="?android:progressBarStyleHorizontal"
        android:min="0"
        android:max="100"
        android:progress="30"
        />
    <RatingBar
        android:id="@+id/rtb"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:numStars="5"
        android:stepSize="0.5"
        android:rating="3.5"/>
    <Button
        android:id="@+id/btn"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="BUTTON"/>
    <TextView
        android:id="@+id/tv"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:textSize="40sp"
        android:text="显示文本"
        android:gravity="center"/>
</LinearLayout>

第一个没有设置style那么则是模糊模式图形:
在这里插入图片描述
第二个ProgressBar设置了:
style="?android:progressBarStyleHorizontal"
代表让这个控件横向显示,因为android:progress=“30”
所以一开始显示就是从30起步
在这里插入图片描述
疑问:模糊模式图形旋转的进度条表名我们程序正在加载数据,数据总有加载完的时刻,那么如何做到呢?
这里我们得用到所有控件都有的属性visibility(可见性)
可以通过android:visibility进行指定,可选值有三种:(可见)visible、(不可见)invisible与(不可见)gone.

invisible与gone的区别:
invisible表示控件不可见,但是它仍然占据原来的位置和大小
gone表示控件不可见,而且不占据任何屏幕空间。
当我们没有在控件中指定android:visibility时候,控件默认都是可见的。

我们还可以在JAVA代码中设置布局控件的是否可见的三种属性
控件名字.setVisibility() 中传入View.VISIBLE、View.INVISIBLE、View.GONE这三种值

如:
private ProgressBar prg1;
设置prg1控件不可见,不占据任何屏幕空间
代码:

prg1.setVisibility(View.GONE);

在JAVA代码中我们还可以通过 控件名.getVisibility() 来判断是否可见
控件名.setProgress可以设置当前进度,今后开发中可以利用这个作为更新进度。

ProgressBar中的style有很多个样式,可以自己去尝试一下。

RatingBar控件

rating英语表示评价

RatingBar这个控件就是星级评价
大家可以在购物网站评价,五星好评之类的。
它的显示样式:
在这里插入图片描述
好了,了解了基本的样式之后,下面介绍基本的XML属性

RatingBar的XML属性

|

XML属性 解释
android:numStar 设置几颗星星
android:stepSize 设置每次能拖动多少
android:rating 展示时设置默认多少颗星

好了,接下看看范例:

<RatingBar
    android:id="@+id/rtb"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:numStars="5"
    android:stepSize="0.5"
    android:rating="5"/>

显示样式:
在这里插入图片描述
因为我们设置了numStars为五颗星,rating=5默认开始为满星评价,就显示全亮了。

猜你喜欢

转载自blog.csdn.net/zguohuai/article/details/106296117
今日推荐