【Kotlin/Android Studio】リソースの文字列をコードで利用する方法!getString

この記事からわかること
- Android Studio/Kotlinでstring.xmlの文字を参照する方法
- リソースをコードで利用するには?
- getStringメソッドの使い方
- Activity意外のFragmentなどで利用する方法
index
[open]
\ アプリをリリースしました /
環境
- Android Studio:Flamingo
- Kotlin:1.8.20
リソースの文字列をコードで利用する方法
「string.xml」に定義した文字列をコードから利用するにはgetString
メソッドを利用します。
<string name="welcome_messages">Hello World</string>
val str = getString(R.string.welcome_messages)
print(str) // Hello World
getString
メソッドを使用しない場合は取得できるのはリソースIDになります。
val strId = R.string.welcome_messages
val str = getString(strId)
print(str) // Hello World
文字列配列を取得する
「string.xml」に以下のようにstring-array
を使用して定義していた場合はgetStringArray
メソッドを使用して取得することが可能です。
<string-array name="planets_array">
<item>Mercury</item>
<item>Venus</item>
<item>Earth</item>
<item>Mars</item>
</string-array>
val array: Array<String> = getStringArray(R.array.planets_array)
Fragmentや独自のクラスで取得する
ActivityではなくFragmentや独自のクラスでリソースを取得したい場合はそのままだとgetString
メソッドが使用できないのでContext
オブジェクトを介してリソースにアクセスできます。
val res = context.resources
val str = res.getString(R.string.welcome_messages)
print(str) // Hello World
Drawableリソースを取得する方法は以下の記事を参考にしてください。
まだまだ勉強中ですので間違っている点や至らぬ点がありましたら教えていただけると助かります。
ご覧いただきありがとうございました。