android 按钮的点击缩放
16lz
2021-01-23
1、
/** * 设置点击放大效果。 */public static void setClickZoomEffect(final View view) {if (view != null) {view.setOnTouchListener(new OnTouchListener() {boolean cancelled;Rect rect = new Rect();@Overridepublic boolean onTouch(View v, MotionEvent event) {switch (event.getAction()) {case MotionEvent.ACTION_DOWN:scaleTo(v, Common.MAX_CLICK_ZOOM_FACTOR);break;case MotionEvent.ACTION_MOVE:if (rect.isEmpty()) {v.getDrawingRect(rect);}if (!rect.contains((int) event.getX(), (int) event.getY())) {scaleTo(v, 1);cancelled = true;}break;case MotionEvent.ACTION_UP:case MotionEvent.ACTION_CANCEL: {if (!cancelled) {scaleTo(v, 1);} else {cancelled = false;}break;}}return false;}});}}
/** * 对view进行缩放。 */@SuppressLint("NewApi")public static void scaleTo(View v, float scale) {if (Build.VERSION.SDK_INT >= 11) {v.setScaleX(scale);v.setScaleY(scale);} else {float oldScale = 1;if (v.getTag(Integer.MIN_VALUE) != null) {oldScale = (Float) v.getTag(Integer.MIN_VALUE);}final LayoutParams params = v.getLayoutParams();params.width = (int) ((params.width / oldScale) * scale);params.height = (int) ((params.height / oldScale) * scale);v.setTag(Integer.MIN_VALUE, scale);}}
更多相关文章
- Activity半透明效果
- GridView 实现水平拖拉效果
- android 按比例缩放图片(适屏)
- 一个Android实现图片的倒影效果的代码示例
- android 按钮按下效果2
- android实现渐变效果
- android canvas中的save()和restore()的作用及效果
- android仿安卓微信、云播雷达扫描动画效果
- Android为返回键设置动画效果