Форум программистов, компьютерный форум CyberForum.ru

Программирование Android

Войти
Регистрация
Восстановить пароль
 
AgentZ
0 / 0 / 0
Регистрация: 11.07.2013
Сообщений: 115
#1

Присвоение переменной значения из ресурсов - Программирование Android

16.07.2016, 17:02. Просмотров 226. Ответов 4
Метки нет (Все метки)

Столкнулся с такой проблемой.
Находясь в активити, я могу присвоить значение переменной таким способом:

Java
1
String name = this.getString(R.string.name);
Но у меня текстовый массив с последующим присвоением массиву значений находится в отдельном классе, который не является Активити.. И такой способ не работает

Например, у меня есть класс "Zet", его содержимое:

Java
1
2
3
4
5
6
public class Zet {
 
String s1 = "Наименование 1"; //Вот тут я хочу использовать @String, так как приложение переводится на несколько языков
String s2 = "Наименование 2"; // то же самое. и так далее много переменных
 
}
Метод getString() не работает внутри этого класса. Пару часов пытался найти решение, но уже выбился из сил =(

Добавлено через 4 минуты
И еще в догонку вопрос хочу задать про перевод String.xml - Если по дефолту будет стоять именно английский язык, и будет еще файл -ru - Пользователи, например, из Украины, увидят английский текст или русский? Если да, это нужно тогда для каждой нужной страны создавать файл? (Наверное, глупый вопрос)) Но все же хочется именно английский ставить на дефолт, так как западных юзеров будет много. А для украины, беларуси и т.д. чтоб был русский
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.07.2016, 17:02     Присвоение переменной значения из ресурсов
Посмотрите здесь:
Передача значения переменной Activity в другой класс Android
Android Содержимое переменной в качестве имени переменной
Android Хранение ресурсов
Android смена ресурсов
Получить картинку из ресурсов Android
Взять массив из ресурсов Android
Получить массив из ресурсов Android
Android Использование ресурсов классами
Android Обращение к файлу ресурсов
Android Сравнение строковых ресурсов
Android Установка ресурсов от строки
Android Загрузка нужных ресурсов

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
MrScrat
19 / 5 / 1
Регистрация: 28.09.2014
Сообщений: 79
16.07.2016, 22:50     Присвоение переменной значения из ресурсов #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Передавай в этот класс контекст, используя который, сможешь работать с ресурсами.
fraley
103 / 103 / 37
Регистрация: 24.05.2015
Сообщений: 313
17.07.2016, 00:09     Присвоение переменной значения из ресурсов #3
AgentZ, просто сделайте переменные в классе статическими.
Java
1
2
3
4
5
6
public class Zet {
 
public static final String STR1 = "Наименование 1";
public static final String STR2 = "Наименование 2"; 
 
}
А обращение к ним через имя класса. Но вы уверены что это то что вам надо?
Возможно вам нужна локализация приложения? Если да, то почитайте:
http://developer.alexanderklimov.ru/android/locale.php
AgentZ
0 / 0 / 0
Регистрация: 11.07.2013
Сообщений: 115
17.07.2016, 08:54  [ТС]     Присвоение переменной значения из ресурсов #4
MrScrat, Спасибо! Чет я не догадался в контекст

fraley, Собственно, я так и делаю, как Вы говорите. И по ссылке как раз то, что мне и нужно, но это никак не отменяет моего вопроса по поводу строковых ресурсов в переменные =)
Alexvp
107 / 71 / 8
Регистрация: 03.08.2014
Сообщений: 344
17.07.2016, 11:37     Присвоение переменной значения из ресурсов #5
Цитата Сообщение от AgentZ Посмотреть сообщение
Но все же хочется именно английский ставить на дефолт, так как западных юзеров будет много. А для украины, беларуси и т.д. чтоб был русский
Вам же уже подсказали - почитайте про локализацию приложений. Да, для каждого языка придется делать свой файл локализации. Если для какого-нибудь языка нет, то будет подставлен вариант по умолчанию. Язык определяется по настройкам смартфона. Для украинского, белорусского и других сделайте файл локализации с русским текстом.
Yandex
Объявления
17.07.2016, 11:37     Присвоение переменной значения из ресурсов
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru