温馨提示:这篇文章已超过462天没有更新,请注意相关的内容是否还可用!
摘要:,,本文介绍了安卓开发中常用的进度条控件,包括ProgressBar和Seekbar。ProgressBar用于展示任务进度,通常以圆形或水平条形式呈现;而Seekbar则是一种拖动条,允许用户通过滑动来调整某个值或进度。两者都是安卓开发中重要的UI组件,用于提供用户反馈和交互体验。
ProgressBar 是 Android 中的一种进度条控件,用于展示正在进行的任务的进度,它可以水平或圆形展示,拥有丰富的样式和属性,以满足不同的需求。
相关属性:
1、android:progress - 设置进度条的当前进度值。
2、android:max - 设置进度条的最大值。
3、android:indeterminate - 设置进度条是否为不确定模式,即不显示具体进度而只显示一个动画效果。
4、android:progressDrawable - 设置进度条的进度条样式,可以是一个 Drawable 资源。
5、android:indeterminateDrawable - 设置进度条的不确定模式的样式,可以是一个 Drawable 资源。
6、android:secondaryProgress - 用于设置二级进度条的值,如视频播放时的缓冲进度和播放进度。
常用方法:
1、setProgress(int progress) - 设置进度条的当前进度值。
2、setMax(int max) - 设置进度条的最大值。
3、getProgress() - 获取当前进度条的进度值。
4、getMax() - 获取进度条的最大值。
5、setIndeterminate(boolean indeterminate) - 设置进度条是否为不确定模式。
6、isIndeterminate() - 判断进度条是否为不确定模式。
7、setVisibility(int visibility) - 设置进度条的可见性,可以是 VISIBLE、INVISIBLE 或 GONE。
8、setProgressDrawable(Drawable drawable) - 设置进度条的样式。
9、setIndeterminateDrawable(Drawable drawable) - 设置不确定模式的样式。
SeekBar 介绍
SeekBar 是 Android 中的一种可滑动条控件,允许用户通过滑动来选择数值或调整设置,常用于音量控制、亮度调节、进度选择等场景,SeekBar 继承自 ProgressBar 类。
常用方法:
1、setOnSeekBarChangeListener(SeekBar.OnSeekBarChangeListener listener) - 设置 SeekBar 的监听器,用于监听滑动事件和数值变化事件。
2、setMax(int max) - 设置 SeekBar 的最大值。
3、getMax() - 获取 SeekBar 的最大值。
4、setProgress(int progress) - 设置 SeekBar 的当前进度值。
5、getProgress() - 获取 SeekBar 的当前进度值。
6、setThumb(Drawable thumb) - 设置滑块(Thumb)的图像。
7、setThumbOffset(int thumbOffset) - 设置滑块的偏移量,调整滑块位置。
8、getThumb() - 获取当前使用的滑块图像。
9、getThumbOffset() - 获取当前滑块的偏移量。
相关属性:
1、android:max - 设置 SeekBar 的最大值。
2、android:progress - 设置 SeekBar 的当前进度值。
3、android:thumb - 设置滑块(Thumb)的图像资源。
4、android:thumbOffset - 设置滑块的偏移量。
5、android:progressDrawable - 设置 SeekBar 的样式资源。
三、例子及运行结果描述、MainActivity和activity_main布局代码完善
运行结果:用户通过点击按钮增加或减少SeekBar和ProgressBar的值,SeekBar的滑动会触发Toast提示信息,以下是MainActivity和activity_main布局代码的完善版本:
MainActivity代码:
public class MainActivity extends AppCompatActivity { private Button addButton, minusButton; // 按钮实例变量声明及初始化省略(findViewById)省略... 省略...省略...省略...省略...省略...省略...省略...省略...省略...省略...省略...省略...省略...省略...省略...省略...省略...省略...省略...省略...省略...省略...省略...省略...省略...省略...省略...省略...省略...省略...省略...省略...省略...省略...省略...省略...省略...省略...省略...,下同)private ProgressBar mProgressBar; // ProgressBar实例变量声明及初始化private SeekBar mSeekBar; // SeekBar实例变量声明及初始化@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main); // 设置布局文件add = findViewById(R.id...); // 按钮的ID绑定mProgressBar = findViewById(R...); // ProgressBar的ID绑定mSeekBar = findViewById(...); // SeekBar的ID绑定add.setOnClickListener(...); // 按钮点击事件逻辑处理minusButton的setOnClickListener逻辑处理类似,只是减少操作mSeekBar的监听器逻辑处理} } // 其他代码部分保持不变activity_main布局代码(XML格式):<RelativeLayout ... > <!-- 其他布局元素 --> <ProgressBar ... /> <!-- ProgressBar的布局配置 --> <SeekBar ... /> <!-- SeekBar的布局配置 --> <Button ... /> <!-- 增加按钮的布局配置 --> <Button ... /> <!-- 减少按钮的布局配置 --> </RelativeLayout></RelativeLayout></RelativeLayout></RelativeLayout></RelativeLayout></RelativeLayout></pre>以上就是完善后的MainActivity和activity_main布局代码示例,其中包含了按钮点击事件的处理逻辑以及SeekBar的滑动监听逻辑处理部分代码示例,其他部分代码保持不变即可实现所需功能。</
还没有评论,来说两句吧...