Android基础知识之单点触摸_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" >

 <ImageView
 android: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;

 @Override
 protected 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();

  @Override
  public 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;
  }
 });
 }
}

就是这么简单。

原文链接:http://blog.csdn.net/u012702547/article/details/45749107

源码下载:单点触摸

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索android
, ontouch
单点触摸
触摸屏基础知识大全、android基础知识总结、android开发基础知识、android基础知识、android基础知识汇总,以便于您获取更多的相关知识。

时间: 2024-07-31 19:14:44

Android基础知识之单点触摸_Android的相关文章

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="

【Xamarin开发 Android 系列 4】 Android 基础知识

原文:[Xamarin开发 Android 系列 4] Android 基础知识 什么是Android?   Android一词的本义指"机器人",同时也是Google于2007年11月5日宣布的基于Linux平台的开源手机操作系统的名称,该平台由操作系统.中间件.用户界面和应用软件组成,而且不存在任何以往阻碍移动产业创新的专有权障碍,号称是首个为移动终端打造的真正开放和完整的移动软件. Android是一种以Linux为基础的开放源代码操作系统,主要使用于便携设备.目前尚未有统一中文

《OpenGL ES 3.x游戏开发(上卷)》一第2章 游戏开发相关的 Android基础知识

第2章 游戏开发相关的 Android基础知识 OpenGL ES 3.x游戏开发(上卷)虽然本书主要是介绍OpenGL ES 3.0 3D应用及游戏开发的,但由于很多3D游戏应用中还需要用到目标平台的一些其他应用开发方面的知识,而本书3D基础知识部分主要是借助于Android平台来介绍OpenGL ES 3.0 3D应用及游戏开发的.故本章将向读者简要介绍一些在Android游戏开发中必备的一些基础知识,如音效.文件的读取.游戏信息的存储.Socket网络.蓝牙网络等. 提示 由于介绍Andr

Android基础知识之tween动画效果_Android

Android中一共提供了两种动画,其一便是tween动画,tween动画通过对view的内容进行一系列的图像变换(包括平移,缩放,旋转,改变透明度)来实现动画效果,动画效果的定义可以使用xml,也可以使用编码来实现. 下面我们逐一查看tween能够实现的动画效果. 先看看工程的整体结构吧: 我们要实现的效果图如图 点击按钮则执行相应的动画操作. 布局文件activity_main.xml <LinearLayout xmlns:android="http://schemas.androi

详解Android中Service服务的基础知识及编写方法_Android

首先,让我们确认下什么是service?         service就是android系统中的服务,它有这么几个特点:它无法与用户直接进行交互.它必须由用户或者其他程序显式的启动.它的优先级比较高,它比处于前台的应用优先级低,但是比后台的其他应用优先级高,这就决定了当系统因为缺少内存而销毁某些没被利用的资源时,它被销毁的概率很小哦. 那么,什么时候,我们需要使用service呢?        我们知道,service是运行在后台的应用,对于用户来说失去了被关注的焦点.这就跟我们打开了音乐播

Android基础知识之broadcast广播详解_Android

Android中的广播用的太多了,今天稍微总结一下. 按注册方式分为两种: 1.静态注册广播: 静态注册广播就是在androidManifest.xml文件中注册广播,假设我们要实现这样一个效果,在一个activity上点击按钮,发送一条广播,这条广播弹出一个toast,显示"静态"二字. 先看看广播接受者: public class MyBroadcast extends BroadcastReceiver { @Override public void onReceive(Cont

Android基础知识之frame动画效果_Android

上一篇我们说了Android中的tween动画,这一篇我们说说frame动画,frame动画主要是实现了一种类似于gif动画的效果,就是多张图按预先设定好的时间依次连续显示. 新建一个android项目,名字叫做frameTest,在res文件夹下新建一个文件夹叫做anim,我们的frame动画的xml文件就放在这里. 在anim中新建一个frame.xml文件,内容如下: <?xml version="1.0" encoding="utf-8"?> &

Android基础知识、四大组件(转)

Android应用程序使用java语言编写的.Android SDK工具将所有的数据和资源文件以及代码进行编译,打包称为一个apk文件.一个apk文件中的所有代码被认为是一个应用,android系统的设备使用这个apk文件来安装应用.          一旦在设备上安装了,每个android应用都生存在自己的安全沙盒内部:     ①android操作系统是一个多用户的linux系统,在这之中每一个应用是一个不同的用户     ②默认情况系,系统给每一个应用分配一个不相同的user id,这个u

Android基础知识之Toolbar的使用

Toolbar是Android5.0推出的,用来替代ActionBar的控件.可以高度的自定义,使用灵活.官方的ToolBar是必须在5.0以上的系统才能使用,如果需要在低版本中使用.需要使用support v7包中的Toolbar. 下一是官网的Toolbar的介绍: Toolbar  extends ViewGroup  java.lang.Object     ↳    android.view.View         ↳    android.view.ViewGroup