Недавно я обнаружил, что android.R.string
содержит несколько полезных локализованные строки, как «OK», «Да», «Нет», и они доступны в Java код с getResources().getString(android.R.string.yes)
строка доступа к ресурсам Android SDK
Но Android SDK содержит много более локализованные строки. Они расположены в $ANDROID_HOME/platforms/android-25/data/res/values-$LANG/string.xml
К примеру, я хочу использовать следующую строку
<string name="gpsNotifTicker">Location request from <xliff:g id="name">%s</xliff:g></string>
Есть Есть ли способ сделать это, кроме копирования и вставки строки из каждого файла?
android:text="@android:string/gpsNotifTicker"
в XML дает мне «ресурс не является публичной» Ошибка
getString(android.R.string.gpsNotifTicker, name)
в Java дает мне «Нерешенные ссылка»
Кроме того, я пытался добавить SDk ресурсы для наборов исходных в build.gradle
android {
//.....
sourceSets {
main.java.srcDirs += 'src/main/kotlin'
main.resources.srcDirs += '/Users/rostopira/Library/Android/sdk/platforms/android-25/data/res'
}
}
Но струны до сих пор не доступны
Это не работает с примером. Работает только для простых строк, таких как «Да» и «Нет». Кроме того, мне нужна эта строка в коде Java –
Я думаю, что это просто автозаполнение не работает. В противном случае, если вы напишете вручную, это не приведет вас к ошибке. [См. Снимок экрана] (http://i.imgur.com/qwUpDpE.png) – azizbekian
Я пробовал. Он говорит, что ресурс @android: string/gpsNotifTicker не является общедоступным. –