圆角btn实现
- 通过shape实现
- 设置GradientDrawable实现,本质也是shape
- 参考www.jianshu.com/p/ab42f2198…
实现圆形btn
- 设置GradientDrawable,对其设置shape
实现btn的按下边框效果
- 直接设置selector,如果对button设置效果应该用AppCompatButton,否则没有效果
- 外层套一层layout 点击时通过selector切换外层layout的background
- 通过GradientDrawable的setStroke方法动态添加background
- 设置一个glag,然后再onDraw方法中动态画出一个边框
- btn的xml下放置一个framelayout,在framelayout上设置一个背景框,图片或者shape,通过调整其显示隐藏来动态展示
上述方法对一个view绘制边框都是描绘内边框
RecycleView上item的状态切换
- 通过设置自定义item的公开方法在onBindViewHolder方法中调用
- 通过设置item的selector,通过判断item的select、pressed等属性来动态切换
- 通过设置mCurrentSelectedIndex的标记,然后再onBindViewHolder中判断position是否等于mCurrentSelectedIndex,来做相应的UI切换