Урок 11. Папка res/values. Используем ресурсы приложения.
Урок 11. Папка res/values. Используем ресурсы приложения.
В этом уроке мы:
- узнаем, зачем нужна папка res/values, что в ней можно хранить и как использовать
Click here to read this article!
- узнаем, зачем нужна папка res/values, что в ней можно хранить и как использовать
Click here to read this article!
Последний раз редактировалось damager82 28 апр 2017, 10:27, всего редактировалось 7 раз.
Re: Урок 11. Папка res/values. Используем ресурсы приложения
Не очень понятно зачем тут
Код: Выделить всё
getResources().getString(R.string.tvBottomText);
Re: Урок 11. Папка res/values. Используем ресурсы приложения
Да, не в тему ... Спасибо )Flactor писал(а):Не очень понятно зачем тут
Код: Выделить всё
getResources().getString(R.string.tvBottomText);
-
- Сообщения: 18
- Зарегистрирован: 02 июл 2012, 03:16
Re: Урок 11. Папка res/values. Используем ресурсы приложения
Не смог победить вот эту ошибку. помогите пожалуйста. никак не пойму в чем причина.
Re: Урок 11. Папка res/values. Используем ресурсы приложения
У вас эти строки не в методе onCreate. Фигурная скобка закрывается до них, а должна после.xolostyak_by писал(а):Не смог победить вот эту ошибку. помогите пожалуйста. никак не пойму в чем причина.
Re: Урок 11. Папка res/values. Используем ресурсы приложения
Незнаю , может для кого-то очевидно, но меня на пару минут заставило задуматься почему в activity_main.xml во вкладке "Graphical Layout" не отобразились изменения нижниго текста, кнопки и фона, внесенные в "onCreate" в MainActivity.java, как я понял всё потому что параметры задаются во время запуска приложения, поправите, если не прав.
Re: Урок 11. Папка res/values. Используем ресурсы приложения
onCreate срабатывает при запуске приложения. Соответственно все то, что мы там накодили выполнится тоже при запуске. И этот код не вносит никаких изменений непосредственно в layout-файл.Daniil писал(а):Незнаю , может для кого-то очевидно, но меня на пару минут заставило задуматься почему в activity_main.xml во вкладке "Graphical Layout" не отобразились изменения нижниго текста, кнопки и фона, внесенные в "onCreate" в MainActivity.java, как я понял всё потому что параметры задаются во время запуска приложения, поправите, если не прав.
Re: Урок 11. Папка res/values. Используем ресурсы приложения
Почему мы в уроке 10-м объявляли переменные
а только затем находили View-элементы:
а в данном примере сразу находим View-элементы?
Предположительный ответ: мы так упрощаем код, но я попытался так упростить его в прошлом уроке и мне выдало ошибку "tvOut cannot be resolved" в методе я там задаю просто Как тогда правильно записать, ведь эти два метода паблик?
Спасибо за ответ
Код: Выделить всё
TextView tvOut;
Button btnOk;
Button btnCancel;
Код: Выделить всё
tvOut = (TextView) findViewById(R.id.tvOut);
btnOk = (Button) findViewById(R.id.btnOk);
btnCancel = (Button) findViewById(R.id.btnCancel);
Предположительный ответ: мы так упрощаем код, но я попытался так упростить его в прошлом уроке и мне выдало ошибку "tvOut cannot be resolved" в методе
Код: Выделить всё
public void onClick(View v)
Код: Выделить всё
tvOut.setText("Нажата кнопка Ок");
Спасибо за ответ
Re: Урок 11. Папка res/values. Используем ресурсы приложения
Если соответствующий View нужен один раз - находим и сразу используем, без локальных переменных.
Если используется несколько раз в одном методе или один раз, но выражение очень длинное - объявляем локальную переменную.
Если нужно использовать в нескольких методах - объявляем поле класса и инициализируем его в onCreate().
В данном случае tvOut нужен в методе onClick(). Поэтому нужно поле класса.
Но если tvOut используется только в onClick(), можно перенести TextView tvOut = (TextView) findViewById(R.id.tvOut); в метод onClick(), тогда tvOut будет локальной переменной в onClick().
Чуть выигрываем по памяти, но теряем по времени.
Если используется несколько раз в одном методе или один раз, но выражение очень длинное - объявляем локальную переменную.
Если нужно использовать в нескольких методах - объявляем поле класса и инициализируем его в onCreate().
В данном случае tvOut нужен в методе onClick(). Поэтому нужно поле класса.
Но если tvOut используется только в onClick(), можно перенести TextView tvOut = (TextView) findViewById(R.id.tvOut); в метод onClick(), тогда tvOut будет локальной переменной в onClick().
Чуть выигрываем по памяти, но теряем по времени.
Re: Урок 11. Папка res/values. Используем ресурсы приложения
скажите как сделать так, чтобы EditText отображался в Android 2.... как в Android 4, потому что в Android 2... он отображается в виде окошка, в Android 4 в виде линии
Re: Урок 11. Папка res/values. Используем ресурсы приложения
не совсем понял, но если посмотреть многое в 4.х версиях выглядит не так как во 2.х и здесь ничего не сделаешь. Так уж делают андроид. Но это всё относится к стандартным компонентам, если делать кастомизацию то по идеи должно выглядить одинаково не зависимо от версии андроида, может быть различия лишь на рзных дивайсах.di16 писал(а):скажите как сделать так, чтобы EditText отображался в Android 2.... как в Android 4, потому что в Android 2... он отображается в виде окошка, в Android 4 в виде линии
R.id.team
Политика на форуме запрещена
Политика на форуме запрещена
Re: Урок 11. Папка res/values. Используем ресурсы приложения
di16 сомневаюсь что такое возможно, только в голову приходит как создание кастомной разметки. Но я не понимаю для чего это? С каждой новой версией дизайн меняется и будет менятся.
R.id.team
Политика на форуме запрещена
Политика на форуме запрещена
Re: Урок 11. Папка res/values. Используем ресурсы приложения
Лезешь сюда:
"С:\Program Files\Android\android-sdk\platforms\android-X\data\res\"
где X - номер старого SDK (8 или 10)
Находишь стиль для EditText и копируешь в res своего приложения, возможно с творческими изменениями.
Указываешь стиль в своём layout:
"С:\Program Files\Android\android-sdk\platforms\android-X\data\res\"
где X - номер старого SDK (8 или 10)
Находишь стиль для EditText и копируешь в res своего приложения, возможно с творческими изменениями.
Указываешь стиль в своём layout:
Код: Выделить всё
<EditText android:id="@+id/editText1" style="@style/MyEditTextStyle"/>
Re: Урок 11. Папка res/values. Используем ресурсы приложения
Я вот столкнулся с такой проблемой, Подскажите пожалуйста.
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
LinearLayout llBottom = (LinearLayout) findViewById (R.id.llBottom);
TextView tvBottom = (TextView) findViewById (R.id.tvBottom);
Button btnBottom = (Button) findViewById (R.id.btnBottom);
llBottom.setBackroundResourse (R.color.llBottomColor);
tvBottom.setText (R.string.tvBottomText);
btnBottom.setText(R.string.btnBottomText);
у меня LinearLayout и TextView gjlxthryens. Говорит, что LinearLayout cannot be resolved to a type
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
LinearLayout llBottom = (LinearLayout) findViewById (R.id.llBottom);
TextView tvBottom = (TextView) findViewById (R.id.tvBottom);
Button btnBottom = (Button) findViewById (R.id.btnBottom);
llBottom.setBackroundResourse (R.color.llBottomColor);
tvBottom.setText (R.string.tvBottomText);
btnBottom.setText(R.string.btnBottomText);
у меня LinearLayout и TextView gjlxthryens. Говорит, что LinearLayout cannot be resolved to a type
Re: Урок 11. Папка res/values. Используем ресурсы приложения
Проблема с импортом Ctrl+Shift+O вам в помощь.
Re: Урок 11. Папка res/values. Используем ресурсы приложения
спасибо нажал, но теперь ругается
setBackroundResourse, говорит, что
The method setBackroundResourse(int) is undefined for the type LinearLayout
setBackroundResourse, говорит, что
The method setBackroundResourse(int) is undefined for the type LinearLayout
Re: Урок 11. Папка res/values. Используем ресурсы приложения
Очепятка: setBackgroundResoursedasp писал(а):спасибо нажал, но теперь ругается
setBackroundResourse, говорит, что
The method setBackroundResourse(int) is undefined for the type LinearLayout
Re: Урок 11. Папка res/values. Используем ресурсы приложения
спасибо. было две опечатки. теперь все исправлено и не чего не ругается.
это вторая часть урока, где мы в ручную кодили для изменения: кнопки, текста и цвета.
но нижняя часть не поменялась, подскажите, что не так?
это вторая часть урока, где мы в ручную кодили для изменения: кнопки, текста и цвета.
но нижняя часть не поменялась, подскажите, что не так?
Re: Урок 11. Папка res/values. Используем ресурсы приложения
Если были опечатки, значит код вы набирали сами, а не копировали с урока. Возможно где-то еще сделаны ошибки. Скидывайте сюда код MainActivity, посмотрим.dasp писал(а):спасибо. было две опечатки. теперь все исправлено и не чего не ругается.
это вторая часть урока, где мы в ручную кодили для изменения: кнопки, текста и цвета.
но нижняя часть не поменялась, подскажите, что не так?