美文网首页
如何实现radiobutton的点击放大并修改图片效果

如何实现radiobutton的点击放大并修改图片效果

作者: 努力深耕Android的小透明 | 来源:发表于2018-03-19 16:54 被阅读50次

  最近想要实现一个点击放大并改变底部导航栏图片的需求,寻找了一些常用的框架。
  比如bottombar,实现效果如下:


image.png

  比如BottomNavigationView ,实现效果如下:


image.png

  以上两个第三方库都可以实现放大缩小功能,单都无法改变底部导航栏的图片,只能统一改变颜色。而针对于既要进行放大操作,又要进行更换图片操作的底部导航栏来说,不能满足需求。
  项目中使用的是:radiobutton,要实现这样的功能着实苦恼了很久。后来想到了写方法来放大某个radiobutton,重置其他radiobutton ,这个方法的缺陷是因为放大的是控件,如果图片分辨率不高的话放大会造成一定程度的失真。
  使用方法:当点击一个radiobutton的时候,调用以下两个方法:
setButtonScale(传入要放大的radiobutton)
resetScale(传入其他几个要重置的radiobutton )
  代码如下:

public static final float  SCALE_MAX     = 1.2F;
public static final float  SCALE_NOMAL   = 1f;
 private void setButtonScale(RadioButton controlRadioButton, float scaleType) {
        controlRadioButton.setScaleX(scaleType);
        controlRadioButton.setScaleY(scaleType);
    }

    public void resetScale(RadioButton bt1, RadioButton bt2) {
        bt1.setScaleX(SCALE_NOMAL);
        bt1.setScaleY(SCALE_NOMAL);
        bt2.setScaleX(SCALE_NOMAL);
        bt2.setScaleY(SCALE_NOMAL);
    }

  实现效果如下:

image.png

参考:
github地址:BottomBar

相关文章

网友评论

      本文标题:如何实现radiobutton的点击放大并修改图片效果

      本文链接:https://www.haomeiwen.com/subject/oolpqftx.html