Intereting Posts
Случайное исключение NullPointerException в API Google Maps v2 Определение доступного пространства кучи для Activity (предотвращение исключения OutOfMemoryException) Android ListView со сложным заголовком Android: элементы ListView в ListFragment накладываются на себя Мигающий экран перехода изображения между действиями Изменение цвета текста ActionBar Android переместить приложение в sd Возобновление активности при нажатии на уведомление Блокировка от вторжения отключена на переднем плане с режимом Doze – новая оптимизация батарей в Android M Воспроизведение звука через громкоговоритель телефона устройства Android Как обновить индикатор прогресса в элементе ListView Как удалить пример приложения из эмулятора Android? Запрос POST с Android Annotation REST Service Существуют ли альтернативы облачным сообщениям Google для пользовательских сборок Android? Как долго запускается Android-эмулятор? Вам нужно закрыть / запустить, если каждый раз, когда вы меняете код Java?

Не может использовать метод «getString (int resId)» в FragmentPagerAdapter

  1. У меня есть следующий класс в активности моего фрагмента, теперь я хочу получить имя вкладки из strings.xml, но я не могу использовать метод getString(int resId) он выдает сообщение об ошибке «Невозможно сделать статическую ссылку на -статический метод getString (int) из типа Context ".
  2. В методе public CharSequence getPageTitle(int position) мне нужно получить, как это name = getString(R.string.mystring) любая помощь приветствуется.
 public static class AppSectionsPagerAdapter extends FragmentPagerAdapter { public AppSectionsPagerAdapter(FragmentManager fm) { super(fm); } @Override public Fragment getItem(int i) { switch (i) { case 0: Fragment fragment = new Activity1(); return fragment; case 1: Fragment fragment1 = new Activity2(); return fragment1; default: return new Activity2(); } } @Override public int getCount() { return 2; } public CharSequence getPageTitle(int position) { String name = null; if (position==0) { name = "Movie Details"; }else if (position==1) { name = "Movie Comments"; } return name; } } 

Вам нужен объект Context для вызова getResources().getString(int resID) . Попробуйте передать Context в свой конструктор и использовать его здесь, как

 Context mContext; public AppSectionsPagerAdapter(FragmentManager fm,Context context) { super(fm); mContext = context } 

А затем используйте mContext.getResources().getString(int resID)

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

EDIT: Не делайте этого – см. Комментарий ниже.