我們都知道,安卓到現在已經出到了安卓10,在這麼多代的發展中,也從一開始完全沒有設計到現在有專門的theme,一共經歷了幾個大階段,使用形式可以看下表:
安卓版本/**
可用api版本
樣式形式
樣式舉例
android 1.0
level 1
theme.***x
theme.black.notitlebar.fullscreen
android 4.0
level 14
theme.holo.***x
theme.holo.light
android 5.0
level 21
theme.material.***x
theme.material.light
compat支援庫
所有level,引入即可用
關於安卓支援庫,谷歌現在大力推進androidx支援庫,老的android庫正在慢慢淘汰,詳細說明可以看這裡:安卓支援庫
關於安卓原生theme的詳細說明,可以閱讀谷歌安卓官方的說明:樣式和主題背景。
回到unity,unity裡要想進行原生theme的配置,首先需要使用gradle方式進行build,在2017.4之後的新版本中,unity預設都會使用gradle模式進行配置,但是具體的theme配置,還要通過androidmanifest.xml
檔案來進行配置。
首先要進入build>build setting> player setting> publish settings\build
介面,確認build system
選項是gradle:
然後我們開啟unity的安裝資料夾,比如我安裝在c:\program files\unity\2017.4.40c1\
中,進入這個資料夾,繼續深入,如果安裝了android外掛程式支援,進入editor\data\playbackengines\androidplayer
,檔案目錄如下圖所示:
這個資料夾下存放了當前所有的安卓支援工具(不包括支援庫),比如tools資料夾下有gradle,variations下有unity的編譯庫等等,有興趣的可以逐個翻看,不過我們現在要進入的是apk資料夾,開啟資料夾,可以看到這樣的內容:
做過一段時間安卓版本的同學一定會很眼熟,沒錯,這兩個檔案就是跟安卓原生專案裡對應的androidmanifest.xml
檔案和res檔案,再開啟res資料夾,如下:
說到unity中的theme配置,首先還是要以官方的檔案為準:android themes in unity
簡單來說,其實unity早在2023年就做好了這方面的支援,所以在安裝資料夾下的styles中就已經根據版本配置了對應的theme了,我們也可以很容易地在上面的幾個資料夾裡看到,unity設定了unitythemeselector
和unitythemeselector.translucent
兩種主題,只要直接使用這兩者,unity就會根據api版本自動選擇合適的theme:
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8"?>
當然了,這只是unity自己的theme,如果我們需要自己配置的theme怎麼辦呢?這裡就要注意unity的載入機制了。
但是這樣是不行的!!!
即使你所有的依賴庫都正確設定了,unity還是會報這樣的錯:
所以老老實實使用theme.material風格吧。
Unity 安卓開發
不過不要慌,如果你不想用最新版本也可以這麼幹 1.安裝個最新版本的編輯器並在安裝時勾選android build support那些選項。2.完成安裝後開啟編輯器找到配置的路徑 edit preferences external tools 直接把這些路徑拷貝到你想要用的那個版本編輯器配置。打包ap...
Unity與安卓通訊
unity5.0以後,將unityplayeractivity打成jar包,打包報錯。解決方法 將bin下面所有包含r的類刪掉再打jar包,打jar包命令 cd到classes目錄,jar cvf jar 記錄下plugins android下面的檔案位置 1 jar包 res資料夾 android...
unity中簡單的安卓輸入的方法
之前有個想法整理了一下update方法裡的寫的東西 雖然好像這個東西沒什麼用,反而更麻煩了 鏈結 嘗試寫一些簡單的安卓輸入進行測試 單點觸控按下,抬起,移動,兩指的滑動。新建乙個指令碼用於書寫安卓輸入,新建兩個float變數,這兩個是記錄兩個手指間的距離 寫乙個方法useandroidinput 在...