Intereting Posts
INSTALL_FAILED_OLDER_SDK, когда версии SDK выглядят так, как должно работать? Отключить журналы волейбола в приложении Android Отключить длинный клик в веб-обозревателе Android OverridePendingTransition показывает вторую активность слишком быстро Зарегистрировать устройство на GCM каждый раз, когда начало приложения является правильным подходом? Как периодически запускать метод службы? Прозрачные системные бары и область содержимого в KitKat Eclipse показывает ошибку, когда нет Создать библиотеку для разработки Android? Пользовательский вид Android показывает сплошной черный цвет после вызова invalidate Проблемы с прокруткой Dynamic Endless RecyclerView Кнопка на пользовательском диалоге Не реагирует на события кликов Андроидная кнопка возврата должна выйти из приложения Как получить центральные точки, когда я просматриваю карту в Google maps v2 в android? Android Flip ImageView по вертикали

Метод getString (int) не определен для типа Apps

Как исправить эту ошибку. Все три строки внизу получают следующую ошибку: «метод getString (int) не определен для типа« Приложения ». Пожалуйста, помогите, им такой нуб.

package com.actionbarsherlock.sample.fragments; import android.content.Context; import android.content.res.Resources; public final class Apps { /** * Our data, part 1. */ public static final String[] TITLES = { "title1", "title2", "title3" }; /** * Our data, part 2. */ public static final String[] DIALOGUE = { getString(R.string.text1), getString(R.string.string2), getString(R.string.string3) }; } 

Первый getString не является статическим методом, вы вызываете его в статическом контексте, это невозможно.

Во-вторых, метод getString является частью класса Resources , ваш класс не расширяет класс Resources поэтому метод не может быть найден.

Я думаю, что разбор экземпляра класса Resources в вашем классе Apps с использованием его конструктора будет вашим лучшим вариантом.

Что-то вроде этого:

 public final class Apps { public Apps(Resources r){ DIALOGUE = new String[]{ r.getString(R.string.text1), r.getString(R.string.string2), r.getString(R.string.string3)}; } /** * Our data, part 1. */ public static final String[] TITLES = { "title1", "title2", "title3" }; /** * Our data, part 2. */ public static String[] DIALOGUE; } 

Передать экземпляр Context context

А затем использовать

 context.getResources().getString(R.string.text1) 

Здесь context относится к вашей текущей деятельности.