Страница 4 из 8

Re: Урок 11. Папка res/values. Используем ресурсы приложения

Добавлено: 05 янв 2014, 11:44
TittTitov
Доброго времени!

Ребят, объясните пожалуста, как правильно сделать.

Допустим, я создал ресурс mystring.xml, в нем прописал строковую константу с id tvKep,

Как мне значение (текст) этой константы присвоить:
1. Произвольному String, например String myNewstring;
2. Добавить это значение к тексту TextView (пример из 28 урока): tvView.setText("Your name is: " + fName + " " + lName);?
Спасибо!

Re: Урок 11. Папка res/values. Используем ресурсы приложения

Добавлено: 05 янв 2014, 12:49
Foenix
почти в каждом уроке автор вначале заводит требуемые строковые ресурсы, как вы думаете, он потом их использует? а как?

Операция слияния строк называется concatenation, запрос в гугле будет выглядеть вот так "android java string concatenation"
а вообще вот ссылка, выдаваемая тем же запросом.
http://mobile.tutsplus.com/tutorials/an ... a-strings/
там все есть.

Re: Урок 11. Папка res/values. Используем ресурсы приложения

Добавлено: 29 янв 2014, 17:31
ejjik
Доброго времени суток.
Такой вопрос ,Знающим людям.
После создания фаила myres. в фале R.java нет класса color.
попытался создать вручную он не сохраняется.

В результате ресурса "color" нет в списке ресурсов.
Изображение
а в mainActivity обращение к классу color невозможно "color cannot be resolved or is not a field "
Зарание спасибо.

Re: Урок 11. Папка res/values. Используем ресурсы приложения

Добавлено: 29 янв 2014, 18:10
ejjik
С ресурсами разобрался (просто тип ресурса =))
Проблема с классом "color" осталась

Re: Урок 11. Папка res/values. Используем ресурсы приложения

Добавлено: 29 янв 2014, 18:18
ejjik
Все разобрался. =)

Re: Урок 11. Папка res/values. Используем ресурсы приложения

Добавлено: 17 фев 2014, 07:45
magamay
покажите как работает -
getResources().getString(R.string.tvBottomText);

Re: Урок 11. Папка res/values. Используем ресурсы приложения

Добавлено: 17 фев 2014, 08:26
klblk
magamay писал(а):покажите как работает -
getResources().getString(R.string.tvBottomText);
что имеется в виду под "как работает"? В strings.xml пишутся строки, а с помощь этого метода их можно программно получить.

Или вам нужны исходники этого метода?

Re: Урок 11. Папка res/values. Используем ресурсы приложения

Добавлено: 17 фев 2014, 09:37
magamay
да, хотелось бы посмотреть на исходник

Re: Урок 11. Папка res/values. Используем ресурсы приложения

Добавлено: 17 фев 2014, 10:05
Mikhail_dev
[syntax=java5]
public Resources More ...getResources() {
74 if (mResources != null) {
75 return mResources;
76 }
77 if (mOverrideConfiguration == null) {
78 mResources = super.getResources();
79 return mResources;
80 } else {
81 Context resc = createConfigurationContext(mOverrideConfiguration);
82 mResources = resc.getResources();
83 return mResources;
84 }
85 }


public String More ...getString(int id) throws NotFoundException {
330 CharSequence res = getText(id);
331 if (res != null) {
332 return res.toString();
333 }
334 throw new NotFoundException("String resource ID #0x"
335 + Integer.toHexString(id));
336 }
[/syntax]

В любом случае, пишите в гугле к примеру "Activity source android" и смотрите исходники, например на GrepCode сайте.
http://grepcode.com/file/repository.gre ... g%28int%29

Re: Урок 11. Папка res/values. Используем ресурсы приложения

Добавлено: 17 фев 2014, 10:21
magamay
а по проще нету :), на подобие как в уроке 11 описано?
или это самое простое
з.ы. только начал учиться :)

Re: Урок 11. Папка res/values. Используем ресурсы приложения

Добавлено: 17 фев 2014, 10:50
Mikhail_dev
Хех, не, нет. Это исходники Андроида. Их конечно читать желательно, но не в самом начале пути изучения. А что собственно необходимо понять?

Re: Урок 11. Папка res/values. Используем ресурсы приложения

Добавлено: 17 фев 2014, 11:39
magamay
да, в уроке написан этот код, думал там просто тоже :)
в дальнейшем думаю разберусь.
спасибо!

Re: Урок 11. Папка res/values. Используем ресурсы приложения

Добавлено: 17 фев 2014, 12:44
Foenix
magamay писал(а):а по проще нету :), на подобие как в уроке 11 описано?
или это самое простое
з.ы. только начал учиться :)
МОжно, только вот зачем, если ты только что учиться начал?

Для просмотра исходников нужно их скачать (указать галочками в окне, где обновляешь SDK соответствующую версию андроид) а затем ходить по ним точно так же как и по своему коду (по гиперссылкам с помощью клавиши ctrl например)

Re: Урок 11. Папка res/values. Используем ресурсы приложения

Добавлено: 17 фев 2014, 12:45
Foenix
m090050 писал(а):Хех, не, нет. Это исходники Андроида. Их конечно читать желательно, но не в самом начале пути изучения. А что собственно необходимо понять?
О том, как можно смотреть исходники - тоже был вебинар.

Re: Урок 11. Папка res/values. Используем ресурсы приложения

Добавлено: 22 фев 2014, 12:41
KameoMika
Иногда необходимо в коде получить не ID ресурса, а его значение. Это делается следующим образом:

Код: Выделить всё

getResources().getString(R.string.tvBottomText);
Выражение вернет текст «Нижний текст», соответствующий String-ресурсу с name = tvBottomText.
Цитата из урока.
А проще нельзя? ;)
http://stackoverflow.com/questions/8999 ... -getstring
Только что проверила: по клику на кнопе сделала верхнему TextView значение "Hello World", которое в приложении изначально. Вроде работает))

P.S. Хотя по сути то же самое получается, но новичкам навроде меня запись
String resour = this.getString(R.string.hello_world);
будет понятнее, как мне кажется

Re: Урок 11. Папка res/values. Используем ресурсы приложения

Добавлено: 25 фев 2014, 23:07
damager82
KameoMika писал(а):А проще нельзя? ;)
Можно и так, но тогда я еще этого не знал.

Re: Урок 11. Папка res/values. Используем ресурсы приложения

Добавлено: 25 мар 2014, 17:03
Oren
Добрый день. Смотрю уроки и возникла проблема в середине 11 урока.
Создаю файл myres.xml в папке values.
Нажимаю кнопку Add, заполняю Поля Name и Value, нажимаю сохранить, затем еще раз Add.
И вот тут начинается проблема. В списке констант строка так и остается с именем "String", не применяя значение из поля "Name". А в xml представлении файла добавился не полноценный тег

Код: Выделить всё

<string></string>
, а в виде, как будто он не является контейнером

Код: Выделить всё

<string />
В итоге, если несколько раз нажать на Add, то код файла будет иметь следующий вид:

Код: Выделить всё

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="tvTopText">Верхний текст</string>
<string />
<string />
<string />

    
</resources>
Для теста скопировал в этот файл код из дефолтного файла strings.xml
Сохранил, визуальное представление констант никак не изменилось. Так и висит одна String

Подскажите, в чем проблема?

Re: Урок 11. Папка res/values. Используем ресурсы приложения

Добавлено: 30 мар 2014, 10:02
Юрий Кузнецов
Здравствуйте все участники форума. Я не программист. Изучением Eclipse я занялся с целью создания конкретной программы. Программа уже создана для Windows. Создавал я её на Lazarus (посмотреть можно здесь: http://eintproject.ru/index.php?option= ... 6&Itemid=5). Но появилась потребность в портативном варианте программы (под Android). По существу это электронная книжка с содежанием структурированным в виде таблицы. Я вижу её так: есть активити с таблицей, ячейки это кнопки (к примеру). По нажатию на кнопку открывается другое активити с текстом для этой ячейки. Самый простой вариант: создать для каждой кнопки своё активити с соответствующим текстом. Но этот вариант мне кажется не грамотным и слишком ресурсоёмким (кнопок порядка ста). Я изучал уроки, но явных ответов на свои вопросы не нашёл. Не могли бы вы подсказать как это можно реализовать грамотно.

Re: Урок 11. Папка res/values. Используем ресурсы приложения

Добавлено: 30 мар 2014, 10:13
siberprogs
Правильно кажется. Используй одно активити и putExtra: http://startandroid.ru/ru/uroki/vse-uro ... ntent.html
или SharedPreferences: http://startandroid.ru/ru/uroki/vse-uro ... ences.html
А по хорошему надо бы в сторону GridView копать: http://startandroid.ru/ru/uroki/vse-uro ... ibuty.html и уроки с адаптерами почитать.

Re: Урок 11. Папка res/values. Используем ресурсы приложения

Добавлено: 30 мар 2014, 10:30
Foenix
Юрий Кузнецов писал(а):Здравствуйте все участники форума. Я не программист. Изучением Eclipse я занялся с целью создания конкретной программы. Программа уже создана для Windows. Создавал я её на Lazarus (посмотреть можно здесь: http://eintproject.ru/index.php?option= ... 6&Itemid=5). Но появилась потребность в портативном варианте программы (под Android). По существу это электронная книжка с содежанием структурированным в виде таблицы. Я вижу её так: есть активити с таблицей, ячейки это кнопки (к примеру). По нажатию на кнопку открывается другое активити с текстом для этой ячейки. Самый простой вариант: создать для каждой кнопки своё активити с соответствующим текстом. Но этот вариант мне кажется не грамотным и слишком ресурсоёмким (кнопок порядка ста). Я изучал уроки, но явных ответов на свои вопросы не нашёл. Не могли бы вы подсказать как это можно реализовать грамотно.
похожая проблема тут уже обсуждалась. Ищите по форуму.
И вообще вы пишете в совершенно левую тему. Смысл?