Использование getResources().getString внутри DialogFragment - сбой

У меня отображаются диалоги, когда я запускаю приложение (класс используется из MainActivity). Я хочу использовать строку из strings.xml, но когда я использую getResources().getString(R.string.stringname), это приводит к сбою приложения, выдавая ошибку, что оно не привязано к действию. Как это исправить?


person user1780775    schedule 04.12.2013    source источник
comment
Опубликуйте logcat и некоторый код, чтобы мы могли вам помочь   -  person user2511882    schedule 04.12.2013
comment
можем ли мы увидеть ваш logcat ..   -  person TechArcSri    schedule 04.12.2013


Ответы (2)


Вы должны использовать ApplicaitonContext, просто как: MiyaApplication.getApplication().getApplicationContext().getResources().getString(R.string.loading);

person Alan    schedule 26.05.2015

Я, если у вас есть ошибка, говорящая, что "dialog is not attached to the activity", я думаю, что проблема не в строковом ресурсе.

В большинстве случаев возможно, что вы показываете диалог из фоновой службы. Вы не можете просто показать обычный диалог с экземпляром контекста приложения. Вам нужно окно активности, чтобы держать ваш диалог.

Однако, если вам действительно нужно показать диалог из фоновой службы (без активности вашего приложения), вы должны использовать активность в стиле диалога.

Поместите это свойство в раздел активности в AndroidManifest.xml.

<activity android:theme="@android:style/Theme.Dialog">
person Robin    schedule 04.12.2013