unity中对安卓触摸函数的测试
来源:互联网 发布:cf雷神官网数据 编辑:程序博客网 时间:2024/05/29 17:07
最近对Touch类研究了一下,所有测试都是在安卓上测试,iOS未知,上代码:
using System.Collections;using System.Collections.Generic;using UnityEngine;using System.Text;using UnityEngine.UI;/// <summary>/// 对Touch类的研究/// </summary>public class TouchScreen : MonoBehaviour { private MeshRenderer cube; private Text _text; Touch[] touch1; // private bool isShow = false; // private PlayVideo playV; // Use this for initialization void Start () { cube = GameObject.Find("Cube").GetComponent<MeshRenderer>(); _text = GameObject.Find("Text").GetComponent<Text>(); // playV = GameObject.Find("ARCamera").GetComponent<PlayVideo>(); } // Update is called once per frame void Update () { // int touchNum = Input.touchCount; //只读属性,就是有几个点触摸在屏幕上,两个手指一起按在屏幕上就是2,类推; #region //if (touchNum == 1) //{ // cube.material.color = Color.red; //} //if (touchNum == 2) //{ // cube.material.color = Color.yellow; //} //if (touchNum == 3) //{ // cube.material.color = Color.green; //} //if (touchNum == 4) //{ // cube.material.color = Color.black; //} // _text.text = touchNum.ToString(); //将数值转换成等效的字符串形式 #endregion // Touch touch1 = Input.GetTouch(0); //官方说明:返回一个存放触摸信息的对象;真机测试的结果就是 在已经触摸的几个点中,索引为1则代表存放第二个触摸对象的信息,可以对第二个触摸对象进行操作 #region //if (touch1.tapCount == 1)//这个就是连击的次数,双击为2,三击为3,类推 //{ // cube.material.color = Color.red; //} //if (touch1.tapCount == 2) //{ // cube.material.color = Color.yellow; //} //if (touch1.tapCount == 3) //{ // cube.material.color = Color.black; //} //if (touch1.phase == TouchPhase.Moved) //触摸时并移动 //{ // cube.material.color = Color.red; //} //if (touch1.phase == TouchPhase.Began) //触摸开始,开始状态 //{ // cube.material.color = Color.yellow; //} //if (touch1.phase == TouchPhase.Ended) //触摸结束,这是一个触摸的最后状态 //{ // cube.material.color = Color.black; //} //if (touch1.phase == TouchPhase.Stationary) //长按不动 TouchPhase触摸的几种状态 枚举 //{ // cube.material.color = Color.blue; //} //if (touch1.phase == TouchPhase.Canceled) //系统取消跟踪触摸 //{ // cube.material.color = Color.red; //} //_text.text = touch1.tapCount.ToString(); #endregion // cube.transform.position = touch1.deltaPosition; //deltaposition是一个二维向量,表示最近更新中记录的触摸位置和上一个更新中记录的位置之间的差异; // _text.text = touch1.deltaPosition.ToString(); //int fingerout = 0; //touch1 = Input.touches; //返回最后一帧中所有触摸对象的返回列表(只读) //foreach (Touch item in Input.touches) //{ // if (item.phase != TouchPhase.Canceled && item.phase != TouchPhase.Ended) // { // fingerout++; // } //} // cube.transform.position = touch1[0].position; //接触点的像素坐标,竖屏时的左上角(横屏时的左下角)为原点,最大坐标就是手机分辨率了 // cube.transform.position = touch1[0].rawPosition; //就是触摸点刚接触的位置,不会随着手指的移动而其值改变,也是竖屏的左上角为原点,最大坐标是分辨率; // cube.transform.position = Input.mousePosition; //接触点的像素坐标 too // cube.transform.position = Camera.main.ScreenToWorldPoint(Input.GetTouch(0).position); // cube.transform.position = Camera.main.ScreenToWorldPoint(Input.mousePosition); Vector3 pos = new Vector3(Input.GetTouch(0).position.x,Input.GetTouch(0).position.y,10); cube.transform.position = Camera.main.ScreenToWorldPoint(pos); ; //Camera.main.ScreenToWorldPoint(Vector3 p) ,如果p.z=0,则该函数返回的总是摄像机的世界坐标位置,所以必须带深度 // _text.text = touch1.deltaTime.ToString(); //自上一次记录的触摸值更改以来,已经过的时间值;若触摸值没有改变则时间为0; // _text.text = cube.transform.position.ToString(); _text.text = cube.transform.position.ToString(); } public void ExitGame() { Application.Quit(); }}
阅读全文
0 0
- unity中对安卓触摸函数的测试
- RobotFrameWork+APPIUM实现对安卓APK的自动化测试----第四篇【AppiumLibrary实用函数介绍】
- RobotFrameWork+APPIUM实现对安卓APK的自动化测试----第五篇【AppiumLibrary校验函数介绍】
- RobotFrameWork+APPIUM实现对安卓APK的自动化测试----第六篇【AppiumLibrary等待函数介绍】
- 【Unity开发】Unity中触摸和鼠标操作的几个问题
- Unity 3D 对手机屏幕触摸的控制脚本
- 安卓多点触摸的问题
- unity中手机触摸代码
- Unity中读取安卓相册选择图片的方法
- Unity中调用安卓平台下的系统按键
- Unity中触摸和鼠标操作的几个问题
- Unity中触摸和鼠标操作的几个问题(转)
- 测试WebBrwoser控件中JavaScript对C++函数的调用
- 安卓触摸事件集锦
- 安卓触摸事件探究
- 安卓手机触摸画线
- 安卓触摸事件剖析
- 安卓触摸事件处理机制的简单介绍
- ios 修改包名
- NAT64下的IPV4地址合成IPV6
- 【Scikit-Learn 中文文档】模型选择:选择估计量及其参数
- c++内存对齐
- Update() 和 FixedUpdate()区别
- unity中对安卓触摸函数的测试
- Java知识点小记(零碎版 超速更新)
- Hibernate3调用getHibernateTemplate().save()引发的java.lang.reflect.InvocatonTargetException
- python 从excel文件中拉取手机号运单号并发送短信《第一版》
- 新华社评论员:用好大数据 布局新时代
- 嵌入式数据库和数据库服务器的区别
- Java 的 安全性 体现在哪里?面试题
- 纯纯纯小白(菜鸡不懂代码)手搭腾讯云服务器apache24+php7+mysql5.6 顺带还有个微擎安装配置 学习开发微信公众号
- Python Scikit-learn ---- SVM算法