У меня есть значение внутри моего кода:
val mainFileName = "Untitled list"
Как я знаю, лучший способ обработки строк - использование строкового ресурса, поэтому внутри файла ресурсов String я создал эту строку:
<string name="untitled_list">Untitled list</string>
Чтобы проверить, все ли я сделал правильно, я проверил эту строку на тосте, и все работает нормально:
Toast.makeText(this, R.string.untitled_list,Toast.LENGTH_SHORT).show()
Затем я попытался присвоить "mainFileName" эту строкусделать ресурс (внутри класса MainActivity, но вне метода OnCreate):
val previewOfNewListTitle = resources.getString(R.string.untitled_list)
но я получаю ошибку:
Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'android.content.res.Resources android.content.Context.getResources()' on a null object reference
at android.content.ContextWrapper.getResources(ContextWrapper.java:91)
at android.view.ContextThemeWrapper.getResourcesInternal(ContextThemeWrapper.java:127)
at android.view.ContextThemeWrapper.getResources(ContextThemeWrapper.java:121)
at android.support.v7.app.AppCompatActivity.getResources(AppCompatActivity.java:543)
at lt.tetro.myapplication.MainActivity.<init>(MainActivity.kt:121)
Как я могу назначить текст строкового ресурса для "mainFileName"внутри класса MainActivity?