鸿蒙应用开发

您所在的位置:网站首页 音乐播放进度条复制打字 鸿蒙应用开发

鸿蒙应用开发

2024-06-30 07:32| 来源: 网络整理| 查看: 265

导语:大家好,我是你们的朋友 朋哥。

上一篇原创文章  时间选择器,设置了时间选择控件。 今天来说说进度条,鸿蒙中进度条分为两种 ProgressBar ,Slider 。提前说一下 鸿蒙进度条可是比Android强大多了。

图片

下面我们开始今天的文章,还是老规矩,通过如下几点来说:  

1,简介  2,用到的属性  3,实战

简介

ProgressBar , Slider用于显示内容或操作的进度。可以通过进度条查看一些功能操作的进度。

使用场景:项目开发中 通过 设置数值 改变进度条的样式,或者通过手动拖动改变进度条和进度值。 ProgressBar , Slider 两者的主要区别就是  Slider有拖动圆环效果。

用到的属性

ProgressBar的共有XML属性继承自:ScrollView。 ProgressBar和Slider的关系:Slider 继承 ohos.agp.components.AbsSlider  继承 ohos.agp.components.ProgressBar

 

 

实战

1,添加默认的进度条

1,默认进度条很简单 ,设置 最大值,最小值,默认进度值。 2,进度条方向 ohos:orientation="horizontal"

2,设置 进度条分割线和分割线颜色 ​​​​​

1,设置分割线 个数  ohos:divider_lines_number="5" 2,设置是否显示分割线  ohos:divider_lines_enabled="true" 3,设置进度条背景颜色  ohos:progress_element="#000000" 设置进度条分割线颜色 progressBar.setDividerLineColor(Color.RED);

图片  

3,设置 进度条进度数值及其颜色 ​​​​​

1,设置进度条数值  ohos:progress_hint_text="30%" 2, 设置进度条数值颜色 ohos:progress_hint_text_color="#FFCC99"图片  

4,设置 拖动条和拖动进度更新 ​​​

1, 设置拖动条 数值,和数值颜色  

图片

2,拖动条 更新函数  Slider.ValueChangedListener currentSlider.setValueChangedListener(this);

@Override public void onProgressUpdated(Slider slider, int position, boolean b) { switch (slider.getId()) { case ResourceTable.Id_current_value_slider: { progressBar.setProgressValue(position); progressBar1.setProgressHintText(position+"%"); currentText.setText(String.valueOf(currentSlider.getProgress())); break; } default: break; } }

完整代码效果:  

图片

     package com.example.progressbar.slice; import com.example.progressbar.ResourceTable; import ohos.aafwk.ability.AbilitySlice; import ohos.aafwk.content.Intent; import ohos.agp.components.ProgressBar; import ohos.agp.components.Slider; import ohos.agp.components.Text; import ohos.agp.utils.Color; public class MainAbilitySlice extends AbilitySlice implements Slider.ValueChangedListener{ private ProgressBar progressBar,progressBar1; private Text currentText; private Slider currentSlider; @Override public void onStart(Intent intent) { super.onStart(intent); super.setUIContent(ResourceTable.Layout_ability_main); progressBar = (ProgressBar)findComponentById(ResourceTable.Id_progressbar); progressBar.setDividerLineColor(Color.RED); progressBar1 = (ProgressBar)findComponentById(ResourceTable.Id_progressbar1); currentText = (Text) findComponentById(ResourceTable.Id_current_value_text); currentSlider = (Slider) findComponentById(ResourceTable.Id_current_value_slider); currentSlider.setValueChangedListener(this); } @Override public void onActive() { super.onActive(); } @Override public void onForeground(Intent intent) { super.onForeground(intent); } @Override public void onProgressUpdated(Slider slider, int position, boolean b) { switch (slider.getId()) { case ResourceTable.Id_current_value_slider: { progressBar.setProgressValue(position); progressBar1.setProgressHintText(position+"%"); currentText.setText(String.valueOf(currentSlider.getProgress())); break; } default: break; } } @Override public void onTouchStart(Slider slider) { } @Override public void onTouchEnd(Slider slider) { } }

老规矩 代码不能少,下载代码 运行效果看看,记得点个赞。 源码:https://gitee.com/codegrowth/haomony-develop/tree/master/ProgressBar​​​​​​​

关注公众号【程序员漫话编程】,后台回复 ”鸿蒙“ ,即可获得上千鸿蒙开源组件。

原创不易,有用就关注一下。要是帮到了你 就给个三连吧,多谢支持。  

觉得不错的小伙伴,记得帮我 点个赞和关注哟,笔芯笔芯~**

作者:码工  

有问题请留言或者私信,可以 微信搜索:程序员漫话编程,关注公众号获得更多免费学习资料。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3