Google Android - это несложно • Просмотр темы - Урок 5. Layout-файл в Activity. XML представление. Смена ориентации экрана.

Google Android - это несложно

Добро пожаловать на форум сайта startandroid.ru
Текущее время: 15 авг 2018, 23:12

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 365 ]  На страницу 1, 2, 3, 4, 5 ... 19  След.
Автор Сообщение
СообщениеДобавлено: 08 авг 2011, 03:00 
Администратор
Аватар пользователя

Зарегистрирован: 07 янв 2012, 11:32
Сообщений: 1400
Благодарил (а): 0 раз.
Поблагодарили: 75 раз.

На прошлом уроке мы выяснили, что Activity читает layout-файл и отображает то, что в нем сконфигурировано. Теперь выясним, откуда Activity знает, какой именно layout-файл читать. 




Click here to read this article!

_________________
Добро пожаловать на форум сайта StartAndroid
ИзображениеИзображение


Последний раз редактировалось damager82 12 июн 2017, 12:23, всего редактировалось 27 раз(а).

Вернуться наверх
 Профиль  
 
СообщениеДобавлено: 18 янв 2012, 15:08 

Зарегистрирован: 18 янв 2012, 15:06
Сообщений: 4
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
подскажите...в чем ошибка? Делаю все в точности как написано, но потом "android:text="Какой-то текст" /> " подчеркивается желтым (в main.xml) и такая же история с текстом в в myscreen.xml.
Сама ошибка вот: [I18N] Hardcoded string "Какой-то текст", should use @string resource


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: 18 янв 2012, 15:53 
Администратор
Аватар пользователя

Зарегистрирован: 07 янв 2012, 11:32
Сообщений: 1400
Благодарил (а): 0 раз.
Поблагодарили: 75 раз.
panda30 писал(а):
подскажите...в чем ошибка? Делаю все в точности как написано, но потом "android:text="Какой-то текст" /> " подчеркивается желтым (в main.xml) и такая же история с текстом в в myscreen.xml.
Сама ошибка вот: [I18N] Hardcoded string "Какой-то текст", should use @string resource


Это скорее рекомендация, а не ошибка. Нам говорят, что надо хранить тексты в файлах ресурсов и использовать только ссылку на ресурс. И это правильно.
А я в своих уроках использую сразу текст, чтобы не усложнять.

В уроке 11 я рассказываю о ресурсах.

_________________
Добро пожаловать на форум сайта StartAndroid
ИзображениеИзображение


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: 18 янв 2012, 18:56 

Зарегистрирован: 18 янв 2012, 15:06
Сообщений: 4
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Так проблема в том, что он не запускают потом программу...:(


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: 18 янв 2012, 19:22 

Зарегистрирован: 18 янв 2012, 15:06
Сообщений: 4
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
http://s59.radikal.ru/i163/1201/4a/653eed454987.jpg вот что вылезает...


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: 18 янв 2012, 19:59 
Администратор
Аватар пользователя

Зарегистрирован: 07 янв 2012, 11:32
Сообщений: 1400
Благодарил (а): 0 раз.
Поблагодарили: 75 раз.
Судя по скрину, файл screen.out.xml - пустой?
Удалите его или заполните чем-нить.

_________________
Добро пожаловать на форум сайта StartAndroid
ИзображениеИзображение


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: 18 янв 2012, 20:36 

Зарегистрирован: 18 янв 2012, 15:06
Сообщений: 4
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
все))я разобрался))моя дурная голова)я нажимал CTRL+F11 когда был активен не корень программы, а какая я то его часть)


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: 12 фев 2012, 19:01 

Зарегистрирован: 12 фев 2012, 18:58
Сообщений: 3
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Цитата:
В поле File вводим имя файла: myscreen.xml и жмем Finish. Новый layout-файл должен сразу открыться. Добавим TextView и через Properties изменим его текст на: «Этот экран описан не в main.xml, а в myscreen.xml», сохраняем.

Перед тем как создавать TextView надо создать любой Layout в нашем новом XML, иначе .java-файл его не воспримет. Понимаю, что это должно быть очевидно, но я по незнанию потерял на это минут 15).


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: 14 фев 2012, 16:58 
Администратор
Аватар пользователя

Зарегистрирован: 07 янв 2012, 11:32
Сообщений: 1400
Благодарил (а): 0 раз.
Поблагодарили: 75 раз.
Если создавать файл визардом, то он по дефолту LinearLayout вставляет в корень.
У вас не так?

_________________
Добро пожаловать на форум сайта StartAndroid
ИзображениеИзображение


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: 18 фев 2012, 21:15 

Зарегистрирован: 18 фев 2012, 21:10
Сообщений: 2
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Подскажите пожалуйста, запускаю приложение, в эмуляторе, вижу вертикальный режим и соответствующий xml файл, жму кнтр+ф12, переходит в горизонтальный режим и запускается xml файл из layout-land, жму еще раз кнтрл+ф12, переходит в вертикальный режим но xml файл остается тот же, что и при горизонтальном? Почему так?


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: 22 фев 2012, 09:04 
Администратор
Аватар пользователя

Зарегистрирован: 07 янв 2012, 11:32
Сообщений: 1400
Благодарил (а): 0 раз.
Поблагодарили: 75 раз.
man4ik писал(а):
Подскажите пожалуйста, запускаю приложение, в эмуляторе, вижу вертикальный режим и соответствующий xml файл, жму кнтр+ф12, переходит в горизонтальный режим и запускается xml файл из layout-land, жму еще раз кнтрл+ф12, переходит в вертикальный режим но xml файл остается тот же, что и при горизонтальном? Почему так?


Эмулятор с Android 2.3 почему-то глючит при поворотах. Попробуйте на других версиях

_________________
Добро пожаловать на форум сайта StartAndroid
ИзображениеИзображение


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: 07 мар 2012, 12:59 
Аватар пользователя

Зарегистрирован: 07 мар 2012, 12:50
Сообщений: 85
Благодарил (а): 0 раз.
Поблагодарили: 1 раз.
Цитата:
В поле File вводим имя файла: myscreen.xml и жмем Finish. Новый layout-файл должен сразу открыться. Добавим TextView и через Properties изменим его текст на: «Этот экран описан не в main.xml, а в myscreen.xml», сохраняем.


Вот что получается...
Изображение


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: 07 мар 2012, 13:42 
Аватар пользователя

Зарегистрирован: 17 фев 2012, 21:23
Сообщений: 1339
Откуда: Мордор
Благодарил (а): 16 раз.
Поблагодарили: 161 раз.
Ошибка в файле XML. Такое случается если не правильно прописать свойство. Что у Вас находится в самом файле?

_________________
R.id.team
Хватит таскать макулатуру на тренировку! Используй T Note.


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: 07 мар 2012, 14:44 
Аватар пользователя

Зарегистрирован: 07 мар 2012, 12:50
Сообщений: 85
Благодарил (а): 0 раз.
Поблагодарили: 1 раз.
вот... :

<?xml version="1.0" encoding="UTF-8"?>


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: 07 мар 2012, 16:29 
Аватар пользователя

Зарегистрирован: 17 фев 2012, 21:23
Сообщений: 1339
Откуда: Мордор
Благодарил (а): 16 раз.
Поблагодарили: 161 раз.
MeTeOpA писал(а):
вот... :
<?xml version="1.0" encoding="UTF-8"?>

Хм... Я бы сказал, что там нет ничего.
Файл myscreen.xml должен выглядеть примерно так:
Код: [ Загрузить ] [ Скрыть ]
  1. <?xml version="1.0" encoding="utf-8"?> 
  2. <LinearLayout 
  3. xmlns:android="http://schemas.android.com/apk/res/android" 
  4. android:layout_width="fill_parent" 
  5. android:layout_height="fill_parent" 
  6. android:orientation="vertical"> 
  7. <TextView 
  8. android:id="@+id/textView1" 
  9. android:layout_width="wrap_content" 
  10. android:layout_height="wrap_content" 
  11. android:text="Этот экран описан не в main.xml, а в myscreen.xml" /> 
  12. </LinearLayout> 

_________________
R.id.team
Хватит таскать макулатуру на тренировку! Используй T Note.


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: 07 мар 2012, 18:17 
Аватар пользователя

Зарегистрирован: 07 мар 2012, 12:50
Сообщений: 85
Благодарил (а): 0 раз.
Поблагодарили: 1 раз.
А почему тогда создается пустой хмл?...
Мне просто интересно...


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: 07 мар 2012, 20:09 
Аватар пользователя

Зарегистрирован: 17 фев 2012, 21:23
Сообщений: 1339
Откуда: Мордор
Благодарил (а): 16 раз.
Поблагодарили: 161 раз.
Если при создании XML файла, в открывшемся окне, в правом верхнем углу нет зеленого робота, значит Вы создаете простой файл XML.
Возможно не правильно установлен SDK.

_________________
R.id.team
Хватит таскать макулатуру на тренировку! Используй T Note.


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: 27 мар 2012, 19:40 
Аватар пользователя

Зарегистрирован: 17 фев 2012, 21:23
Сообщений: 1339
Откуда: Мордор
Благодарил (а): 16 раз.
Поблагодарили: 161 раз.
Создал описание нового класса на базе ListView. Как мне его добавить в xml?

_________________
R.id.team
Хватит таскать макулатуру на тренировку! Используй T Note.


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: 28 мар 2012, 09:15 
Администратор
Аватар пользователя

Зарегистрирован: 07 янв 2012, 11:32
Сообщений: 1400
Благодарил (а): 0 раз.
Поблагодарили: 75 раз.
KamiSempai писал(а):
Создал описание нового класса на базе ListView. Как мне его добавить в xml?


С точки зрения XML также как ListView, только вместо ListView пишите свой класс с пакетом.
Код: [ Загрузить ] [ Скрыть ]
Using XML Syntax Highlighting
  1. <com.mypackage.MyListView
  2.  android:id="@+id/listView1"
  3.  android:layout_width="match_parent"
  4.  android:layout_height="wrap_content" />

_________________
Добро пожаловать на форум сайта StartAndroid
ИзображениеИзображение


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: 28 мар 2012, 17:38 
Аватар пользователя

Зарегистрирован: 17 фев 2012, 21:23
Сообщений: 1339
Откуда: Мордор
Благодарил (а): 16 раз.
Поблагодарили: 161 раз.
Спасибо, я так и думал. У меня конструктор был не подходящий, оказывается нужно было добавить параметр "AttributeSet attrs".
Как то так: public MyListView(Context context, AttributeSet attrs).

_________________
R.id.team
Хватит таскать макулатуру на тренировку! Используй T Note.


Вернуться наверх
 Профиль  
 
Показать сообщения за:  Сортировать по:  
Начать новую тему Ответить на тему  [ Сообщений: 365 ]  На страницу 1, 2, 3, 4, 5 ... 19  След.

Часовой пояс: UTC + 3 часа


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB