android 的那些触摸效果
16lz
2021-01-23
过往的经验,android上的比较好的触摸效果实现方案:
- /**
- *触摸事件
- */
- OnTouchListeneronTouchListener=newOnTouchListener()
- {
- publicbooleanonTouch(Viewv,MotionEventevent){
- switch(event.getAction()){
- caseMotionEvent.ACTION_DOWN:
- v.setBackgroundDrawable(Util.getNinePatchDrawable(R.drawable.button_pressed));
- break;
- caseMotionEvent.ACTION_UP:
- v.setBackgroundDrawable(Util.getNinePatchDrawable(R.drawable.button_normal));
- break;
- caseMotionEvent.ACTION_MOVE:
- break;
- default:
- v.setBackgroundDrawable(Util.getNinePatchDrawable(R.drawable.button_normal));
- break;
- }
- returnfalse;
- }
- };
当然还有另外一种方式,就是放在xml文件中实现
- <?xmlversion="1.0"encoding="utf-8"?>
- <selectorxmlns:android="http://schemas.android.com/apk/res/android">
- <itemandroid:drawable="@drawable/button_pressed"android:state_selected="true"/>
- <itemandroid:drawable="@drawable/button_pressed"android:state_focused="true"/>
- <itemandroid:drawable="@drawable/button_pressed"android:state_pressed="true"/>
- <itemandroid:drawable="@drawable/button_normal"/>
- </selector>
该文件存放于drawable目录下
使用时这样使用:
- <Button
- android:id="@+id/button1"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:text="Button"
- android:background="@drawable/buttonstyle"
- />
这样似乎更简洁
更多相关文章
- android 触摸事件传递机制与笔记
- Android设置透明、半透明效果
- TextView 实现跑马灯效果
- 转:善用Android预定义样式来为我们的布局设置效果,大大节约代码量
- android实现图片平铺效果&WebView多点触控实现缩放
- android 百度地图定位与覆盖物的添加,以及他们的点击事件
- Android基于TextView实现跑马灯效果
- android上dialog横屏下实现全屏效果
- Marquee 跑马效果