android 利用shape实现环形进度条
16lz
2021-12-04
一,布局为
<?xml version="1.0" encoding="utf-8"?>
二, test_shape 对应shape为
<?xml version="1.0" encoding="utf-8"?>
其中,对应属性
首先,shape根元素有些属性只适用于ring类型,先过目下这些属性吧:android:innerRadius 内环的半径android:innerRadiusRatio 浮点型,以环的宽度比率来表示内环的半径,默认为3,表示内环半径为环的宽度除3该值会被android:innerRadius覆盖android:thickness 环的厚度android:thicknessRatio 浮点型,以环的宽度比率来表示环的厚度,默认为9,表示环的厚度为环的宽度除以9,该值会被android:thickness覆盖android:useLevel 一般为false,否则可能环形无法显示,只有作为LevelListDrawable使用时才设为true
三,对应,Activity为
public class Main19Activity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main19); ImageView imageView = findViewById(R.id.imageview); RotateDrawable animationDrawable = (RotateDrawable) imageView.getDrawable(); ValueAnimator valueAnimator = ValueAnimator.ofInt(0, 10000); valueAnimator.setDuration(4000); valueAnimator.setInterpolator(new LinearInterpolator()); valueAnimator.setRepeatCount(ValueAnimator.INFINITE); valueAnimator.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() { @Override public void onAnimationUpdate(ValueAnimator animation) { Integer animatedValue = (Integer) animation.getAnimatedValue(); animationDrawable.setLevel(animatedValue); } }); valueAnimator.start(); }}
四,效果图
更多相关文章
- Android中自定义TextView的形状--圆形-椭圆形-圆角矩形-线条
- android:weight的使用
- Android百度地图开发(三)范围搜索
- android 自定义进度条
- android 随手记-画虚线
- android设置在ListView中让TextView滚动
- Android使用VideoView全屏播放视频拉伸变形解决办法
- shape的使用总结
- Android中Shape和Selector的结合使用。