启动页代码实现
1.创建一个Plane,并在Plane下放入三张图片
2.注意Canvas的缩放模式, 这样就能直接将Plane的缩放改为3倍了
3.编写脚本代码 挂在Plane上
(在Update中判断手机移动,然后使用iTween来移动UI)
using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.SceneManagement; using UnityEngine.UI; public class PageControl : MonoBehaviour { public GameObject rectTrans; private Vector3 originPos; private Vector2 nowPos; public Image page0; public Image page1; public Image page2; public GameObject startBtn; int num; private Vector3 originTrans; public GameObject loadText; // Use this for initialization void Start () { SetPageNum (); originTrans = rectTrans.transform.position; Debug.Log ("x======"+ originPos.x); } // Update is called once per frame void Update () { judgeFinger (); if (Application.platform == RuntimePlatform.Android && (Input.GetKeyDown (KeyCode.Escape))) { Application.Quit (); } if (Application.platform == RuntimePlatform.Android && (Input.GetKeyDown (KeyCode.Home))) { Application.Quit (); } } void judgeFinger() { if (Input.touchCount == 0 ) { return; } if (Input.GetTouch (0).phase == TouchPhase.Began) { originPos = Input.GetTouch (0).position; } if (Input.GetTouch (0).phase == TouchPhase.Moved) { nowPos = Input.GetTouch (0).position; } if (Input.GetTouch (0).phase == TouchPhase.Ended) { if (nowPos.x - originPos.x > 100) { Debug.Log ("后退" ); Retreat (); } if (nowPos.x - originPos.x < -100) { Debug.Log ("前进"); Advance (); } nowPos = new Vector3 (0, 0, 0); originPos = new Vector3 (0, 0, 0); } } private void Retreat() { if (num == 0) { return; } num--; iTween.MoveTo(rectTrans,iTween.Hash("x",(originTrans.x - Screen.width * num),"time",0.7f)); if (num == 2) { startBtn.SetActive (true); } else { startBtn.SetActive (false); } SetPageNum (); } private void Advance() { if (num == 2) { // SceneManager.LoadScene ("Main"); return; } num++; iTween.MoveTo(rectTrans,iTween.Hash("x",(originTrans.x -Screen.width * num),"time",0.7f)); if (num == 2) { startBtn.SetActive (true); }else { startBtn.SetActive (false); } SetPageNum (); } private void SetPageNum() { if (num == 0) { page0.enabled = true; page1.enabled = false; page2.enabled = false; } if (num == 1) { page0.enabled = false; page1.enabled = true; page2.enabled = false; } if (num == 2) { page0.enabled = false; page1.enabled = false; page2.enabled = true; } } public void StartGame() { SceneManager.LoadScene ("Main"); } }