Android自定义一个图形单点移动缩小的效果
短信预约 -IT技能 免费直播动态提醒
先给大家展示下效果图,如果大家感觉不错,请参考实现代码
效果图如下所示:
代码如下所示:
public class MainActivity extends Activity { View view; public static final int DRAG = 1; public static final int SCALE = 2; int mode = 1; int height = 10, width = 10; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); getWindow().requestFeature(Window.FEATURE_NO_TITLE); setContentView(R.layout.activity_main); view = findViewById(R.id.view); } float length = 1; // 重写 @Override public boolean onTouchEvent(MotionEvent event) { int x = (int) event.getX(); int y = (int) event.getY(); // 多指触控 switch (event.getAction() & event.getActionMasked()) { case MotionEvent.ACTION_DOWN: mode = DRAG; break; case MotionEvent.ACTION_POINTER_DOWN: Log.e("TAG", "多指移动"); mode = SCALE; // 两个手指开始的长度是多少呢? length = calc(event); break; case MotionEvent.ACTION_UP: length = 1; break; case MotionEvent.ACTION_MOVE: if (mode == DRAG) { // 1. 单个手指 FrameLayout.LayoutParams params = new FrameLayout.LayoutParams( width, height); params.setMargins(x, y, 0, 0); view.setLayoutParams(params); } else { // 2. 两个手指 float beilv = calc(event) / length; width = (int) (view.getWidth() * beilv); height = (int) (view.getHeight() * beilv); Log.e("TAG", beilv + " " + width + " " + height); FrameLayout.LayoutParams params = (LayoutParams) view .getLayoutParams(); params.width = width; params.height = height; view.setLayoutParams(params); } break; } return true; } // 类 Ponint public float calc(MotionEvent event) { float x1 = event.getX(); float y1 = event.getY(); float x2 = event.getX(1); float y2 = event.getY(1); return (float) Math.sqrt((x1 - x2) * (x1 - x2) + (y1 - y2) * (y1 - y2)); }}
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
Android自定义一个图形单点移动缩小的效果
下载Word文档到电脑,方便收藏和打印~
下载Word文档
猜你喜欢
Android自定义一个图形单点移动缩小的效果
先给大家展示下效果图,如果大家感觉不错,请参考实现代码效果图如下所示:代码如下所示:public class MainActivity extends Activity { View view; public static final
2023-05-30
如何在Android中实现一个动画效果的自定义下拉菜单功能
如何在Android中实现一个动画效果的自定义下拉菜单功能?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。要实现的功能及思路如下:下拉菜单样式是自定义的、非原生效果:需要使用
2023-06-06
Android自定义带增长动画和点击弹窗提示效果的柱状图DEMO
项目中最近用到各种图表,本来打算用第三方的,例如MPAndroid,这是一个十分强大的图表库,应用起来十分方便,但是最终发现和设计不太一样,没办法,只能自己写了。今天将写好的柱状图的demo贴在这,该柱状图可根据数据的功能有一下几点:
2022-06-06