自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Unity3D 游戲引擎之感應(yīng)iOS設(shè)備旋轉(zhuǎn)與iPhone鍵盤事件

移動開發(fā) Android iOS 游戲開發(fā)
iPhone iPad iTouch 旋轉(zhuǎn)設(shè)備都支持屏幕4個方向的任意旋轉(zhuǎn),那么強大的Unity3D 游戲引擎當(dāng)然也支持啦,雖然很多游戲都為了避免麻煩強制的不讓屏幕旋轉(zhuǎn)但是做為學(xué)習(xí)我們還是知道一下為好,因為Unity3D在處理屏幕旋轉(zhuǎn)實在是非常方便。

下面MOMO將以一個例子向各位盆友們介紹Unity3D 屏幕的哪些事兒。

強制屏幕四個方向不旋轉(zhuǎn)的方法

[代碼]c#/cpp/oc代碼:

1 void Start () { 
2     //縱向 上下 兩個方向 
3     iPhoneKeyboard.autorotateToPortrait = false; 
4     iPhoneKeyboard.autorotateToPortraitUpsideDown = false; 
5        
6     //橫向 上下兩個方向 
7     iPhoneKeyboard.autorotateToLandscapeLeft = false; 
8     iPhoneKeyboard.autorotateToLandscapeRight = false; 
9 }

自動旋轉(zhuǎn)屏幕的方法,此方式適用于Unity3.3及一下的版本。

Input.deviceOrientation 可以得到當(dāng)前IOS 設(shè)備屏幕的方向狀態(tài)。

Screen.orientation 設(shè)置屏幕的反轉(zhuǎn)情況

 

[代碼]c#/cpp/oc代碼:

01 void Update () { 
02         //處理橫向兩個方向旋轉(zhuǎn) 
03         if(Input.deviceOrientation == DeviceOrientation.LandscapeLeft) 
04         { 
05             if (Screen.orientation != ScreenOrientation.LandscapeLeft) { 
06                 Screen.orientation = ScreenOrientation.LandscapeLeft; 
07             } 
08         }else if(Input.deviceOrientation == DeviceOrientation.LandscapeRight) 
09         { 
10             if (Screen.orientation != ScreenOrientation.LandscapeRight) { 
11                 Screen.orientation = ScreenOrientation.LandscapeRight; 
12             } 
13                
14         }else  
15         //處理縱向兩個方向的旋轉(zhuǎn) 
16         if(Input.deviceOrientation == DeviceOrientation.Portrait) 
17         { 
18             if (Screen.orientation != ScreenOrientation.Portrait) { 
19                 Screen.orientation = ScreenOrientation.Portrait; 
20             } 
21         }else if(Input.deviceOrientation == DeviceOrientation.PortraitUpsideDown) 
22         { 
23             if (Screen.orientation != ScreenOrientation.PortraitUpsideDown) { 
24                 Screen.orientation = ScreenOrientation.PortraitUpsideDown; 
25             } 
26         } 
27     }
3.4及以上的版本可以在Setting for IOS 設(shè)置中直接設(shè)置屏幕旋轉(zhuǎn)。

下面的游戲例子,通過左邊的按鈕直接切換屏幕旋轉(zhuǎn)狀態(tài),右邊的按鈕打開iPhone輸入狀態(tài)框。

[代碼]c#/cpp/oc代碼:

01 using UnityEngine; 
02 using System.Collections; 
03    
04 public class Main : MonoBehaviour { 
05    
06     //鍵盤輸入 
07     private iPhoneKeyboard keyboard; 
08        
09     //字體皮膚 
10     public GUISkin fontSkin;   
11        
12     // Use this for initialization 
13     void Start () { 
14     } 
15        
16     // Update is called once per frame 
17     void Update () { 
18     } 
19        
20        
21     void OnGUI() { 
22         //設(shè)置皮膚 
23         GUI.skin = fontSkin;   
24             
25         //強制屏幕縱向 
26         if (GUI.Button(new Rect(10, 10, 300, 100), "change LandscapeLeft"))  {   
27                 Screen.orientation = ScreenOrientation.LandscapeLeft; 
28         }else if (GUI.Button(new Rect(10, 110, 300, 100), "change LandscapeRight"))  {   
29                 Screen.orientation = ScreenOrientation.LandscapeRight; 
30         }else  
31            
32         //強制屏幕橫向 
33         if (GUI.Button(new Rect(10, 210, 300, 100), "change Portrait"))  {   
34                 Screen.orientation = ScreenOrientation.Portrait; 
35         }else if (GUI.Button(new Rect(10, 310, 300, 100), "change PortraitUpsideDown"))  {   
36                 Screen.orientation = ScreenOrientation.PortraitUpsideDown; 
37         }    
38            
39            
40         if (GUI.Button(new Rect(320, 10, 300, 100), "open Keyboard"))  {  
41               //打開iphone輸入框 
42               //***個參數(shù) 默認(rèn)顯示 test 
43               //第二個參數(shù) 設(shè)置輸入框類型,這里為默認(rèn),什么都可以輸入 
44               keyboard = iPhoneKeyboard.Open("test",iPhoneKeyboardType.Default); 
45                  
46         } 
47            
48         if(keyboard != null){ 
49                
50             if (keyboard.done){ 
51                 //輸入完畢后 點擊done 輸入輸入內(nèi)容 
52                 Debug.Log( keyboard.text)   ; 
53             }    
54         } 
55            
56     } 
57 }
iPhoneKeyboardType 鍵盤類型幾個比較重要的參數(shù),盆友們可是輸入試一試就知道效果啦。我就不截圖了~

iPhoneKeyboardType.NumbersAndPunctuation : 輸入標(biāo)點符號與數(shù)字iPhoneKeyboardType.URL:輸入網(wǎng)址iPhoneKeyboardType.PhonePad:輸入電話iPhoneKeyboardType.NumberPad:輸入數(shù)字iPhoneKeyboardType.EmailAddress:輸入Email

 
屏幕方向不僅可以感應(yīng)IOS設(shè)備平面4個方向,還可以感應(yīng)屏幕上下方向。
 
屏幕面朝上:LandscapeLeft.FaceUp
屏幕面朝下:LandscapeLeft.FaceDown
責(zé)任編輯:冰凝兒
相關(guān)推薦

2012-12-24 09:01:41

iOSUnity3D

2012-12-24 08:52:44

iOSUnity3D

2012-12-24 08:51:23

iOSUnity3D

2012-12-24 08:40:12

2012-12-24 08:54:47

iOSUnity3D

2012-12-24 08:57:35

iOSUnity3D

2012-12-24 08:46:50

iOSUnity3D

2012-12-24 08:59:13

iOSUnity3D

2012-12-24 08:56:15

iOSUnity3D

2012-12-24 08:45:19

iOSUnity3D

2012-12-24 08:48:25

iOSUnity3D

2012-12-24 08:50:21

iOSUnity3D

2012-12-24 09:04:04

iOSUnity3D

2012-12-24 09:07:09

iOSUnity3D

2013-06-17 09:12:31

Unity3D

2012-12-24 09:02:48

iOSUnity3D

2013-04-25 09:56:24

unity3D手機(jī)游戲引擎

2013-04-25 10:03:07

unity3D手機(jī)游戲引擎

2012-12-24 09:00:31

iOSUnity3D

2012-12-24 09:11:58

iOSUnity3D
點贊
收藏

51CTO技術(shù)棧公眾號