Урок 7. Layout параметры для View-элементов.

Обсуждение уроков
math64
Сообщения: 235
Зарегистрирован: 16 июл 2012, 07:47

Re: Урок 7. Layout параметры для View-элементов.

Сообщение math64 » 05 сен 2012, 10:54

Щелкнуть правой кнопкой мыши по RelativeLayout, в контекстном меню выбрать "Заменить Layout" (точно как написано не помню) и в открывшемся диалоге выбрать LinearLayout
Или перейти в редактирование xml файла и набрать код как в примере.

Аватара пользователя
rezak90
Сообщения: 3422
Зарегистрирован: 26 июн 2012, 13:22
Откуда: UA
Контактная информация:

Re: Урок 7. Layout параметры для View-элементов.

Сообщение rezak90 » 05 сен 2012, 11:00

при создании проекта выбирается создания разметки в главном лейауте, там первая стоит RelativeLayout, выберите LinearLayout
R.id.team
Политика на форуме запрещена

pshogg
Сообщения: 6
Зарегистрирован: 05 сен 2012, 10:15

Re: Урок 7. Layout параметры для View-элементов.

Сообщение pshogg » 05 сен 2012, 11:05

rezak90 писал(а):при создании проекта выбирается создания разметки в главном лейауте, там первая стоит RelativeLayout, выберите LinearLayout
я об этом тоже догадался, а вот где именно меняется не нашел!
Щелкнуть правой кнопкой мыши по RelativeLayout, в контекстном меню выбрать "Заменить Layout" (точно как написано не помню) и в открывшемся диалоге выбрать LinearLayout

называется Change Layout но каждый раз так редактировать влом, как-то проще должны меняться разметки умолчания...

math64
Сообщения: 235
Зарегистрирован: 16 июл 2012, 07:47

Re: Урок 7. Layout параметры для View-элементов.

Сообщение math64 » 05 сен 2012, 11:40

По видимому здесь:
<путь к android-sdk>/tools/templates/BlankActivity/root/res/layout/activity_simple.xml.ftl
Ну и убрать Hello world из
<путь к android-sdk>/tools/templates/BlankActivity/root/res/values/strings.xml.ftl
- это меня больше напрягает.

pshogg
Сообщения: 6
Зарегистрирован: 05 сен 2012, 10:15

Re: Урок 7. Layout параметры для View-элементов.

Сообщение pshogg » 05 сен 2012, 12:24

math64 писал(а):По видимому здесь:
<путь к android-sdk>
даауж.. путь то где искать?) всё перерыл... уж не ругайся!))

math64
Сообщения: 235
Зарегистрирован: 16 июл 2012, 07:47

Re: Урок 7. Layout параметры для View-элементов.

Сообщение math64 » 05 сен 2012, 12:48

У меня в линуксе - ~/android/androind-sdk-linux/ (~ - домашний каталог пользователя)
В винде - C:\Program files\Android... - путь выбирается при установке.

pshogg
Сообщения: 6
Зарегистрирован: 05 сен 2012, 10:15

Re: Урок 7. Layout параметры для View-элементов.

Сообщение pshogg » 05 сен 2012, 16:37

math64 писал(а):У меня в линуксе - ~/android/androind-sdk-linux/ (~ - домашний каталог пользователя)
В винде - C:\Program files\Android... - путь выбирается при установке.
у меня здесь:
D:\Android\android-sdk\tools\templates\activities\BlankActivity\root\res\layout\activity_simple.xml.ftl
с таким содержанием:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width=<#if buildApi lt 8 >"fill_parent"<#else>"match_parent"</#if>
android:layout_height=<#if buildApi lt 8 >"fill_parent"<#else>"match_parent"</#if> >

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:text="@string/hello_world"
tools:context=".${activityClass}" />

</RelativeLayout>

изменил на :
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
</LinearLayout>


новый проект создается, в корне естественно LinearLayout и без приветствия Мира, а какой стандартный код?

pshogg
Сообщения: 6
Зарегистрирован: 05 сен 2012, 10:15

Re: Урок 7. Layout параметры для View-элементов.

Сообщение pshogg » 05 сен 2012, 20:37

Люди, ну напишите содержание этого файла по умолчанию: Android\android-sdk\tools\templates\activities\BlankActivity\root\res\layout\activity_simple.xml.ftl пожалуйста!!

math64
Сообщения: 235
Зарегистрирован: 16 июл 2012, 07:47

Re: Урок 7. Layout параметры для View-элементов.

Сообщение math64 » 06 сен 2012, 09:17

Ну - у меня такой же. Я бы не стал убирать <#if>-<#else>-<#endif> - может быть понадобится делать программу для старого апи.
Шаблон для кода находится в <путь к android-sdk>/tools/templates/BlankActivity/root/src/app_package/SimpleActivity.java.ftl
здесь я бы убрал import android.support.v4.app.NavUtils; - если Вы им не пользуетесь.

Но все эти изменения пропадут при обновлении СДК.

firsoves
Сообщения: 1
Зарегистрирован: 26 сен 2012, 18:25

Re: Урок 7. Layout параметры для View-элементов.

Сообщение firsoves » 26 сен 2012, 18:35

Помогите. Никак не могу понять почему не работает изменение размеров кнопок.

Выглядит это так:

<LinearLayout
android:layout_width="0dp"
android:layout_height="fill_parent"
android:layout_weight="10"
android:padding="2dip" >

<Button
android:id="@+id/Button_Save"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_gravity="center"
android:layout_marginRight="1dp"
android:layout_weight="1"
android:background="@drawable/states_button"
android:padding="0dip"
android:text="@string/date_save"
android:textColor="#000000"
android:textSize="20dip"
android:textStyle="bold" />

<Button
android:id="@+id/Button_Back"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_gravity="center"
android:layout_marginLeft="2dp"
android:layout_weight="1"
android:background="@drawable/states_button"
android:padding="0dip"
android:text="@string/back"
android:textColor="#000000"
android:textSize="20dip"
android:textStyle="bold" />
</LinearLayout>


А в коде просто пишу:


Button mSave;

mSave = (Button) findViewById(R.id.Button_Save);
mSave.setOnClickListener(this);

mSave.setWidth(25);
mSave.setHeight(25);
mSave.setText("SAVE");


В итоге надпись на кнопке изменяется, а размер нет.

Почему такое может происходить?

Аватара пользователя
damager82
Администратор
Сообщения: 1383
Зарегистрирован: 07 янв 2012, 11:32
Контактная информация:

Re: Урок 7. Layout параметры для View-элементов.

Сообщение damager82 » 28 сен 2012, 13:50

firsoves писал(а):Помогите. Никак не могу понять почему не работает изменение размеров кнопок.
В итоге надпись на кнопке изменяется, а размер нет.
Почему такое может происходить?
Добавьте перед вашим кодом такие строки:

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

LinearLayout.LayoutParams lParams;	
lParams = (LinearLayout.LayoutParams) mSave.getLayoutParams();
lParams.weight = 0;
lParams.height = LinearLayout.LayoutParams.WRAP_CONTENT;
Добро пожаловать на форум сайта StartAndroid
ИзображениеИзображение

fortenoobie
Сообщения: 1
Зарегистрирован: 06 ноя 2012, 14:59

Re: Урок 7. Layout параметры для View-элементов.

Сообщение fortenoobie » 06 ноя 2012, 15:01

Кол-во пикселов в одном дюйме называется dpi (dot per inch).

Кол-во точек на дюйм = DPI - характеристика принтеров и сканеров.

Характеристика экранов называется PPI (pixel per inch) :!:

Volha
Сообщения: 61
Зарегистрирован: 20 авг 2012, 17:39

Re: Урок 7. Layout параметры для View-элементов.

Сообщение Volha » 22 янв 2013, 11:44

Здравствуйте!
Объясните, пожалуйста как работает параметр weight? Почему в данном примере происходит именно так?

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

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >
    <TableLayout 
        android:layout_width="match_parent"
        android:layout_height="wrap_content">
		<TableRow 
		    android:layout_width="match_parent"
	    	android:layout_height="wrap_content">
	    	<TextView 
	    	    android:layout_width="wrap_content"
	    	    android:layout_height="wrap_content"
	    	    android:text="weight=1"
	    	    android:layout_weight="1"/>
	    	<TextView 
	    	    android:layout_width="wrap_content"
	    	    android:layout_height="wrap_content"
	    	    android:text="weight=3"
	    	    android:layout_weight="3"/>
		</TableRow>
	</TableLayout>
	<TableLayout 
        android:layout_width="match_parent"
        android:layout_height="wrap_content">
		<TableRow 
		    android:layout_width="match_parent"
	    	android:layout_height="wrap_content">
	    	<TextView 
	    	    android:layout_width="wrap_content"
	    	    android:layout_height="wrap_content"
	    	    android:text="weight=1 blablabla"
	    	    android:layout_weight="1"/>
	    	<TextView 
	    	    android:layout_width="wrap_content"
	    	    android:layout_height="wrap_content"
	    	    android:text="weight=3 blabla"
	    	    android:layout_weight="3"/>
		</TableRow>
	</TableLayout>
</LinearLayout>
Почему параметр weight обращает внимание на содержимое? И как этого избежать?
Изображение

Volha
Сообщения: 61
Зарегистрирован: 20 авг 2012, 17:39

Re: Урок 7. Layout параметры для View-элементов.

Сообщение Volha » 22 янв 2013, 11:58

..А если сделать всё на линейных лайаутах, то тогда вообще происходит магия, не доступная моему пониманию:

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

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >
	<LinearLayout 
	    android:layout_width="match_parent"
    	android:layout_height="wrap_content"
    	android:orientation="horizontal">
    	<TextView 
    	    android:layout_width="match_parent"
    	    android:layout_height="wrap_content"
    	    android:text="weight=1"
    	    android:layout_weight="1"/>
    	<TextView 
    	    android:layout_width="match_parent"
    	    android:layout_height="wrap_content"
    	    android:text="weight=3"
    	    android:layout_weight="3"/>
	</LinearLayout>
	<LinearLayout 
	    android:layout_width="match_parent"
    	android:layout_height="wrap_content"
    	android:orientation="horizontal">
    	<TextView 
    	    android:layout_width="match_parent"
    	    android:layout_height="wrap_content"
    	    android:text="weight=1 blablabla"
    	    android:layout_weight="1"/>
    	<TextView 
    	    android:layout_width="match_parent"
    	    android:layout_height="wrap_content"
    	    android:text="weight=3 blabla"
    	    android:layout_weight="3"/>
	</LinearLayout>
</LinearLayout>
Веса как будто меняются местами :?
Изображение

Аватара пользователя
rezak90
Сообщения: 3422
Зарегистрирован: 26 июн 2012, 13:22
Откуда: UA
Контактная информация:

Re: Урок 7. Layout параметры для View-элементов.

Сообщение rezak90 » 22 янв 2013, 18:47

weight работает только на linearlayout, если не ошибаюсь ещё и на framelayout
R.id.team
Политика на форуме запрещена

Аватара пользователя
TwinSoft
Сообщения: 2
Зарегистрирован: 10 фев 2013, 13:01
Откуда: Винница

Re: Урок 7. Layout параметры для View-элементов.

Сообщение TwinSoft » 10 фев 2013, 13:15

Здраствуйте! Огромное спасибо автору за сайт! Супер!
Вопрос: Можно ли задать вес елемента по вертикали?
Как в 18 уроке по горизонтали: http://startandroid.ru/ru/uroki/vse-uro ... henii.html но по вертикали ?

Аватара пользователя
rezak90
Сообщения: 3422
Зарегистрирован: 26 июн 2012, 13:22
Откуда: UA
Контактная информация:

Re: Урок 7. Layout параметры для View-элементов.

Сообщение rezak90 » 10 фев 2013, 15:22

LinearLayout нужно добавить атрибут

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

android:orientation="vertical"
R.id.team
Политика на форуме запрещена

mishapk
Сообщения: 2
Зарегистрирован: 16 апр 2013, 14:49

Re: Урок 7. Layout параметры для View-элементов.

Сообщение mishapk » 16 апр 2013, 14:58

Подскажите. Почему у вас начиная с 7 урока цвет фона приложения становится черным. Как мне сделать черным фон? У меня только белый.

Аватара пользователя
rezak90
Сообщения: 3422
Зарегистрирован: 26 июн 2012, 13:22
Откуда: UA
Контактная информация:

Re: Урок 7. Layout параметры для View-элементов.

Сообщение rezak90 » 16 апр 2013, 21:22

mishapk писал(а):Подскажите. Почему у вас начиная с 7 урока цвет фона приложения становится черным. Как мне сделать черным фон? У меня только белый.
при создании проекта выбор темы light и dark
R.id.team
Политика на форуме запрещена

mishapk
Сообщения: 2
Зарегистрирован: 16 апр 2013, 14:49

Re: Урок 7. Layout параметры для View-элементов.

Сообщение mishapk » 17 апр 2013, 09:08

rezak90 писал(а):
mishapk писал(а):Подскажите. Почему у вас начиная с 7 урока цвет фона приложения становится черным. Как мне сделать черным фон? У меня только белый.
при создании проекта выбор темы light и dark
У меня на телефоне Android 2.2. Я при создании проекта выбираю все пункты API8:Android 2.2 (Froyo). В данном случае мне не дает выбрать тему Holo Dark.
Требует что бы API была как минимум 11 . Если выбрать в первом списке(Minimum r. SDK) API 11: Android 3.0 и выше или в предпоследнем (compile with) API17:Android 4.2 , тогда дает выбрать темную тему.
Вопрос будет ли работать такое приложение на Android 2.2

//---------------------------------------------------------------
Попробовал создать. Перебрал все темы, все равно белая форма получается.
Слышал в папке \Res\Values\ Должен быть файл Colors.xml, через который меняется цвет формы. Но у меня почему то во всех проектах такого файла нет.
Изображение

Ответить