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);}}


更多相关文章

  1. Android(安卓)Studio 第七十七期 - Android(安卓)广告页 欢迎页
  2. GridView 实现水平拖拉效果
  3. GridView 实现水平拖拉效果
  4. Activity半透明效果
  5. android layer-list
  6. Android放大镜的实现
  7. 一个Android实现图片的倒影效果的代码示例
  8. android 打电话程序的实现
  9. Android(安卓)沉浸式状态栏 +DrawerLayout+Toolbar,适配4.4X及以

随机推荐

  1. Android Studio插件之Android Strings.xm
  2. Android XML解析(Simple API for XML(SAX
  3. 记录一个小技巧-Android日志工具
  4. android双网卡
  5. Android实现简单的闹钟
  6. Android一个简易的登录界面
  7. Android Spinner列表选择框的应用
  8. Android开发视频教程-深入浅出系列Lesson
  9. android-短信发送器
  10. [android]关于开发无触摸屏(智能电视)的a