2013-11-27 14 views
3

A menu button appeared on my appUnity3d應用程序中的Android菜單按鈕

如上所示,當我運行我的應用程序時出現菜單按鈕。我想像往常一樣隱藏按鈕。直到使用軟鍵將手機更改爲Nexus5時,我才知道這個問題。我在Unity3d中開發了這個應用程序,除了後退按鈕外沒有代碼接收來自軟鍵的消息。當然,按下菜單按鈕時什麼都沒有發生。我如何在Unity項目中控制這個配置?

+0

就我所知(在我的設備上看不到它),該菜單通常不會出現在Unity Android應用程序中。你有沒有添加任何插件到你的版本可能會添加這個?當你點擊該菜單時會出現什麼? – Calvin

+0

我沒有安裝任何插件,並且在我寫文本時點擊菜單時沒有任何反應。 – Dish

回答

3
  1. 轉到Unity - >文件 - >生成設置... - >將平臺切換到Android。然後,選擇播放器設置 - >軟件包標識符 - >複製軟件包標識符。

  2. 轉到資產/插件/ Android的

創建新的文件AndroidManifest.xml中

<?xml version="1.0" encoding="utf-8"?> 

<application 
    android:icon="@drawable/app_icon" 
    android:label="@string/app_name" 
    android:debuggable="true"> 
    <activity android:name="com.unity3d.player.UnityPlayerNativeActivity" 
       android:launchMode="singleTask" 
       android:label="@string/app_name" 
       android:configChanges="fontScale|keyboard|keyboardHidden|locale|mnc|mcc|navigation|orientation|screenLayout|screenSize|smallestScreenSize|uiMode|touchscreen"> 
     <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 
      <category android:name="android.intent.category.LAUNCHER" /> 
     </intent-filter> 
     <meta-data android:name="unityplayer.ForwardNativeEventsToDalvik" android:value="false" /> 
    </activity> 
</application> 
</manifest> 

或者你可以去/Applications/Unity/Unity.app/Contents/PlaybackEngines 而複製文件AndroidManifest.xml中,然後加入

<uses-sdk 
    android:minSdkVersion="9" 
    android:targetSdkVersion="14" /> 

注:targetSdkVersion> = 14就可以了,(即:15,16 ...)

重建您的應用程序

祝您好運!

+0

好,它們無意中設置爲6,android:minSdkVersion和targetSdkVersion。然後我刪除了使用sdk標籤,而不是增加版本號,它工作!謝謝! – Dish

2

Unity處理那些與KeyCode.Escape and KeyCode.Menu

void Update() { 
    if (Input.GetKeyDown(KeyCode.Escape)) { 
     //user pressed back key 
    } 

    if (Input.GetKeyDown(KeyCode.Menu)) { 
     //user pressed menu key 
    } 
} 

如果要隱藏軟鍵,您可以試試this suggestion from the forums

+0

我想隱藏的不是所有的軟鍵,而是一個菜單鍵... – Dish

相關問題