close

開發程式時,在設計按鈕或文字方塊等時,為了快速,通常都會直接設定該物件的顯示名稱,如此的做法並不會有任何的問題,但並非好的做法,在 Android Studio 若直接設定物件顯示的名稱或字串,會出現「Hardcoded string "XXX", should use @string resource」的警訊,出現該警訊並不會造成任何問題,它只是在告訴你正確的方式應是將顯示字串,設定於 @string resource 中

Android Studio 有針對字串的管理,因此在設計時,最好的方式是使用字串資源。使用字串資源最大的好處,就是統一命名及多國語系,當某個字串要變更時,只要將該字串所對應的ID的字串值改掉,整支程式有對應到該 ID 的字串,就會一併變更,而最大的缺點就是程式設計上稍微麻煩些,以及當字串 ID 管理不當時,可能會造成多個字串 ID 對應同一字串值。

新增語系

若設計成多國語言,先要增加 Strings.xml 的語系:

一、首先在「res→values」上按下滑鼠右鍵,並選擇「New→Values resource file」

AS2020102801.png

二、先在「File name:」內輸入【strings】,接著點選左方的「Locale」,再按下中間的「>>」按鈕

AS2020102802.png

三、選擇所要設定的語系

AS2020102803.png

完成以上三個步驟,在 strings 中會出現剛剛所設定的語系了

AS2020102805.png

設定字串值

設定字串值的方式有兩種,分別是「自行輸入」和透過「Pick a Resource」視窗

自行輸入

只需在所對應的 strings 內增加如下的語法即可:<string name="String ID">String Name</string>

透過「Pick a Resource」視窗

一、使用滑鼠並點選物件屬性「text」右方的「Pick a Resource」按鈕,如下圖所示。

AS2020102806.png

二、此時會出現「Pick a Resource」視窗,接著點選左上方的「+」,再選擇「string Value...」

AS2020102807.png

三、輸入「Resource name:」及「Resource value:」的名稱及字串值,並在下方選擇所要設定的語系,雖然 Android Studio 支援 Unicode,但在輸入【Resource name】時,還是建設使用英文名稱較佳,設定時要記得每個語系都要設定。

AS2020102808.png

AS2020102809.png

完成以上三個步驟後,在左側便會多了剛剛所設定的項目名稱 UserName ,接著點選該項目,便可在右側看到剛所設定的內容,再點選【OK】按鈕。

AS2020102810.png

原本的屬性 text 己變成「@string/UserName」了。

AS2020102811.png

AS2020102812.png


arrow
arrow

    Condy Lin 發表在 痞客邦 留言(0) 人氣()