android开发之单点触摸
相对于多点触摸,单点触摸还是很简单的。
新建一个工程,先看看布局文件:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"android:paddingBottom="@dimen/activity_vertical_margin"android:paddingLeft="@dimen/activity_horizontal_margin"android:paddingRight="@dimen/activity_horizontal_margin"android:paddingTop="@dimen/activity_vertical_margin"tools:context="com.example.touchevent.MainActivity" ><ImageViewandroid:id="@+id/iv"android:layout_width="match_parent"android:layout_height="match_parent"android:src="@drawable/jiafeimao"android:scaleType="matrix" /></RelativeLayout>
就一个简单的ImageView,一会我们将在Activity中移动这个ImageView:
public class MainActivity extends Activity {private ImageView iv;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);iv = (ImageView) this.findViewById(R.id.iv);iv.setOnTouchListener(new OnTouchListener() {private float x;private float y;// 用来操作图片的模型private Matrix oldMatrix = new Matrix();private Matrix newMatrix = new Matrix();@Overridepublic boolean onTouch(View v, MotionEvent event) {switch (event.getAction()) { // 判断操作类型case MotionEvent.ACTION_DOWN://按下时记住x,y的坐标x = event.getX();y = event.getY();oldMatrix.set(iv.getImageMatrix());break;case MotionEvent.ACTION_MOVE://移动时//用另一个模型记住按下时的位置newMatrix.set(oldMatrix);//移动模型newMatrix.setTranslate(event.getX()-x, event.getY()-y);break;}//把图片放入移动后的模型中iv.setImageMatrix(newMatrix);return true;}});}
}
就是这么简单。
完整代码下载
android开发之单点触摸相关推荐
- Android游戏开发之单点触摸与多点触摸
Android游戏开发之单点触摸与多点触摸的响应方式 游戏开发中的触摸事件 在游戏开发中监听屏幕触摸事件须要在View中重写父类onTouchEvent方法,在重写的方法中拦截用户触摸屏幕的一些信息, ...
- Android开发之多点触摸(Multitouch)
转自: http://www.ideasandroid.com/archives/tag/surfaceview 如果您对开发多点触摸程序感兴趣的话,那么本文将是一个很好的开始,android应用程序 ...
- android怎么监听多点触摸_Android开发中多点触摸的实现方法
Android多点触控需要LCD驱动和程序设计支持,其实我们只要采用电容屏触摸手机的技术即可,接下来,就让爱站技术频道小编来讲解Android开发中多点触摸的实现方法吧! 多点触摸技术在实际开发过程中 ...
- android 科技动画,android开发ViewFlipper触摸动画
[IT168技术]介绍:在教程中,我们可以学习如何解决在Android项目的共同问题,有更多的关于Android的项目信息,我建议你下载ADT Android Pluglins和Eclipse. 背景 ...
- Android App接管手势处理TouchEvnet中单点触摸和多点触控的讲解及实战(附源码 超简单实用)
运行有问题或需要源码请点赞关注收藏后评论区留言~~~ 一.单点触摸 dispatchTouchEvent onInterceptTouchEvent onTouchEvent三个方法的输入参数都是手势 ...
- Android开发笔记(六十五)多样的菜单
菜单Menu Android的菜单分为两类:选项菜单和上下文菜单,默认使用选项菜单.菜单的布局文件存放在res/menu目录下,使用ADT新建一个Android工程,首页代码MainActivity中 ...
- Android开发权威指南(第2版)新书发布
<Android 开发权威指南(第二版)>是畅销书<Android开发权威指南>的升级版,内容更新超过80%,是一本全面介绍Android应用开发的专著,拥有45 章精彩内容供 ...
- 推荐一些顶级的Android开发书籍(转)
本帖对Android开发菜鸟和中级老兵同样适用,因为本帖重点列出了那些最常用的Android开发资源. 推荐书籍 你或许觉得,都现在了,再去看个什么书来学习Android开发,这方法应该早就过时了.没 ...
- 提升Android开发效率的最佳实践
本文属于Android入门与最佳实践系列,有兴趣的可以围观笔者的前一篇关于Android实践建议的文章:2016里一些Android最佳实践列表--Opinionated 原文地址 软件工程师的工作效 ...
最新文章
- C# window服务操作
- java 抓屏_java抓屏代码
- 服务器系统打包,详解Docker 容器基础系统镜像打包
- 多年密谋「闹独立」,谷歌为何拴不住DeepMind的心?
- 你知道数据中心宕机的真正成本吗?
- ffmpeg源码学习之time_base
- TFS 2010 备份和恢复的完整解决方案
- Java建造者模式详解
- java长时间_什么导致Java中长时间的旋转和同步时间?
- JQuery datatables 标题和内容居中显示
- Trains 归纳法
- Kernel Method核方法—应用与理解
- vscode自动整理代码_再见了, VS Code!
- android 签名打包 Invalid keystore format
- Qt线程:QThread
- PHP icbc工商银行开放平台聚合支付,二维码扫码支付API云收呗对接步骤,稳步发展
- CentOS8 启动错误,enter emergency mode 报错 Failed to mount /sysroot 解决方法
- 《linux内核分析》第二次课 实验作业
- python1到100奇数和_python计算1~100的和,1~100奇数的和,1~100偶数的和,一条代码求1~100的和...
- windows下使用vscode编写运行以及调试C/C++
热门文章
- 【项目评级】ArcBlock(ABT)-区块链基石网络
- 搜索引擎-搜索引擎SEO优化
- 羊毛地毯可以用水洗吗
- iOS安全攻与防(总篇)
- 认识netlogon服务
- 用户参与度与活跃度的区别_如何使用色彩理论提高用户对应用程序的参与度
- PyTorch学习笔记(19) ——NIPS2019 PyTorch: An Imperative Style, High-Performance Deep Learning Library
- Kafka KSQL实战
- daimayuan每日一题#814 排队
- 数组的下标访问和指针访问方式效率分析比较