Unity和Android 事件函数的比较
来源:互联网 发布:mac lion系统下载 编辑:程序博客网 时间:2024/05/18 05:50
做过Unity的都知道,unity关于对象有一整套完善的事件函数,在使用时,这些方法是需要挂在目标对象上的,如下:
unity自己的: onmousedown onmouseup onmousedrag
ngui: ondragstart ondragend ondrag onclick onpress
那么在Android开发中也有自己的一套事件函数,这个函数是被封装在SimpleOnGestureListener这个类中
具体使用如下:
下面是界面的代码:
<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=".MainActivity" > <TextView android:id="@+id/tv01" android:layout_width="200dp" android:layout_height="200dp" android:background="#001100" android:text="@string/hello_world" /></RelativeLayout>
下面是Activity代码:
package com.example.tiantian;import android.os.Bundle;import android.app.Activity;import android.util.Log;import android.view.GestureDetector;import android.view.ContextMenu.ContextMenuInfo;import android.view.GestureDetector.OnGestureListener;import android.view.GestureDetector.SimpleOnGestureListener;import android.view.ContextMenu;import android.view.Menu;import android.view.MotionEvent;import android.view.View;import android.view.View.OnTouchListener;import android.widget.EditText;import android.widget.TextView;public class MainActivity extends Activity implements OnTouchListener { GestureDetector gd; TextView tv01; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); tv01 = (TextView) this.findViewById(R.id.tv01); gd = new GestureDetector(this, new mysimpleGestureListener()); tv01.setOnTouchListener(this); } class mysimpleGestureListener extends SimpleOnGestureListener { @Override public boolean onScroll(MotionEvent e1, MotionEvent e2, float distanceX, float distanceY) { Log.i("zhouwa", "z d h h"); // TODO 自动生成的方法存根 return super.onScroll(e1, e2, distanceX, distanceY); } } @Override public boolean onTouch(View arg0, MotionEvent arg1) { // TODO 自动生成的方法存根 //Log.i("zhouwa","kaikaikai"); gd.onTouchEvent(arg1); return true; //这个地方要设为true,否则GestureDetector事件可能不会被触发 }}
使用思路很简单,就3步:
1 对目标对象做Touch监听 如: tv01.setOnTouchListener(this);
2 创建一个GestureDetector对象,根据需要选择性的实现SimpleOnGestureListener类 中的方法
3 在onTouch方法中将手势事件传给GestureDetector对象:
onScroll : 拖且动
onSingleTapUp : 单击松开
onShowPress : 长按
onFling : 手指一滑
FR:徐海涛(Hunk Xu)
1 0
- Unity和Android 事件函数的比较
- Unity和虚幻的比较
- Unity和虚幻的比较
- Unity事件函数的执行顺序
- Unity 脚步 事件函数 的执行顺序
- unity中的事件函数
- unity 事件函数
- Unity 消息事件的封装和使用
- unity PC和android不同平台读取xml文件比较
- Unity和Android的关系
- Unity和Android的交互
- unity 事件函数执行顺序
- Qt事件和信号的比较
- IE和DOM事件流的比较
- Java事件模型与Android事件模型的比较
- Java事件模型与Android事件模型的比较
- Android ListView OnItemLongClick和OnItemClick事件内部细节分享以及几个比较特别的属性
- unity生成android release 版本的apk性能比较好
- Maven搭建SpringMVC+Mybatis框架
- hdu2087剪花布条
- 【交换机】MAC-VLAN的功能作用是什么,如何设置
- linux 定期删除spark日志 shell 脚本
- 模拟实现strstr()函数
- Unity和Android 事件函数的比较
- 最多能喝多少瓶汽水?
- Cookie和Session 区别
- 根据div 标签 查看数组@class=modulwrap 下面的/table/tbody/tr/td
- AB测试结果分析
- Linux - tar打包命令
- iOS开发(OC)——仿QQ微信的图片浏览器(缩放,滑动后还原,本地图片和网络图片都可以用)
- 台式机Linux/Unix多系统安装详细教程
- cJSON使用