Android中seekbar拖动进度条调节透明度和ratingbar星级评分实现
原创上一期简要说明Android高级UI组件progressbar装载箱的,今天要浅吸seekbar拖动进度条以调整图片的透明度和常见的星形注释效果。
透明度的调整和五星好评的话语在我们的生活中很常见,那么它是如何在软件中实现的呢?今天,熊小白,我就带大家简单了解一下。
对于我在下面发布的代码,我已经实现了拖动进度条来调整图片的透明度,单击不同数量的星星可以在星星右侧的指定位置显示分数。
拖动进度条以实现要继承的透明度调整progressbar要实现透明度,需要使用seekbar侦听器方法在内部重写onProgressChanged添加setimageviewalpha(progress)因为seekbar有三个重写的方法,另外两个onStartTrackingTouch和onStopTrackingTouch这是开始和停止触摸的行为的结果,不需要为该功能添加任何代码,但需要在稍后的音乐播放器中滑动进度条以更改音乐进度onstoptrackingtouch然后你需要写相关的Java代码了
引入的星栏评论rating控件,在ratingbar您已经获得了的监控事件中的星星数量,只需放置获得的星星数量即可,我已在下面发布了一些。xml中rating作为参考
android:isIndicator :是否用作指示,用户无法更改,默认值false
android:numStars :显示星星数,必须是整数
android:rating :默认额定值,必须是浮点数。
android:stepSize: 分数每次增加的值,必须是浮点数。
代码:
public class MainActivity extends AppCompatActivity { private SeekBar seekBar; private ImageView imageView; private RatingBar ratingBar; private TextView txt; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); imageView=findViewById(R.id.image); seekBar=findViewById(R.id.seekbar); ratingBar=findViewById(R.id.ratingbar); txt=findViewById(R.id.txt); seekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() { @RequiresApi(api = Build.VERSION_CODES.JELLY_BEAN) @Override public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) { imageView.setImageAlpha(progress); }
@Override
public void onStartTrackingTouch(SeekBar seekBar) {
}
@Override
public void onStopTrackingTouch(SeekBar seekBar) {
}
});
// String rating= String.valueOf(ratingBar.getRating()); // txt.setText(rating); ratingBar.setOnRatingBarChangeListener(new RatingBar.OnRatingBarChangeListener() { @Override public void onRatingChanged(RatingBar ratingBar, float rating, boolean fromUser) { //Toast.makeText(MainActivity.this, "rating:" + String.valueOf(rating), Toast.LENGTH_SHORT).show(); txt.setText(String.valueOf(rating)); } });
}
}
版权声明
所有资源都来源于爬虫采集,如有侵权请联系我们,我们将立即删除