Урок 7. Layout параметры для View-элементов.
Урок 7. Layout параметры для View-элементов.
На этом уроке мы:
- разбираемся в характеристиках экрана
- рассматриваем layout параметры (высота, ширина, отступ, гравитация, вес)
Click here to read this article!
- разбираемся в характеристиках экрана
- рассматриваем layout параметры (высота, ширина, отступ, гравитация, вес)
Click here to read this article!
Последний раз редактировалось damager82 20 июн 2017, 14:54, всего редактировалось 21 раз.
Re: Урок 7. Layout параметры для View-элементов.
Тут наглядное описание по использованиюЯ честно пытался понять зачем нужны значения gravity fill_* и clip_*, но так и не понял. То, что написано про них в хелпе у меня не работает. Если у вас есть сведения по этому поводу – пишите в каменты.
http://android-pro.blogspot.com/2010/03 ... ayout.html
Re: Урок 7. Layout параметры для View-элементов.
Да, я смотрел этот материал. У меня не работает так как там нарисовано.
На материал аж от 4.10.2009. Возможно это просто рудименты, которые уже не работают, но оставлены для совместимости.
На материал аж от 4.10.2009. Возможно это просто рудименты, которые уже не работают, но оставлены для совместимости.
Re: Урок 7. Layout параметры для View-элементов.
Здравствуйте!
Я конечно только новичек в этом деле. Но кажется я понял для чего fill_* и clip_*
Если просто применить gravity, то ни чего не заметно.
Тут с fill_*
Тут с clip_*
Если ошибся по поводу fill_* и clip_* извиняйте!
Извените за кучу текста, но почему-то у меня не пашет спойлер.
Я конечно только новичек в этом деле. Но кажется я понял для чего fill_* и clip_*
Если просто применить gravity, то ни чего не заметно.
Тут с fill_*

Код: Выделить всё
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="fill_vertical"
android:text="fill_vertical" />
<Button
android:id="@+id/button2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="without fill_vertical" />
<Button
android:id="@+id/button3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="fill_horizontal"
android:text="fill_horizontal" />
<Button
android:id="@+id/button4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="without fill_horizontal" />
</LinearLayout>

Код: Выделить всё
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<Button
android:id="@+id/button2"
android:layout_width="226dp"
android:layout_height="wrap_content"
android:layout_gravity="clip_vertical"
android:layout_weight="1"
android:gravity="right"
android:text="clip vertical" />
<Button
android:id="@+id/button4"
android:layout_width="225dp"
android:layout_weight="1"
android:layout_height="wrap_content"
android:text="without clip" />
<Button
android:id="@+id/button3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="clip_horizontal"
android:layout_weight="1"
android:gravity="top"
android:text="clip horizontal" />
<Button
android:id="@+id/button5"
android:layout_width="113dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="without clip" />
</LinearLayout>
Если ошибся по поводу fill_* и clip_* извиняйте!
Извените за кучу текста, но почему-то у меня не пашет спойлер.
[Не, я не злой... просто нервный!]
Re: Урок 7. Layout параметры для View-элементов.
привет всем, крутой сайт
теперь я с вами
вопрос по теме с margin'ами в tableLayout.
Почему верхняя средняя кнопка растягивается по горизонтали автоматически, при увеличении отступов у центральной, а левая средняя по вертикали - нет, хотя у обеих указаны
android:layout_width="wrap_content"
android:layout_height="wrap_content"
не понятно почему первая растягивается при таких свойствах
Логично предположить, для того чтобы кнопка растянулась по вертикали, необходимо указать android:layout_height="match_parent"
теперь я с вами
вопрос по теме с margin'ами в tableLayout.
Почему верхняя средняя кнопка растягивается по горизонтали автоматически, при увеличении отступов у центральной, а левая средняя по вертикали - нет, хотя у обеих указаны
android:layout_width="wrap_content"
android:layout_height="wrap_content"
не понятно почему первая растягивается при таких свойствах
Логично предположить, для того чтобы кнопка растянулась по вертикали, необходимо указать android:layout_height="match_parent"
Re: Урок 7. Layout параметры для View-элементов.
А я как-то не обратил внимания на это. Действительно нелогично.яфпкк писал(а): Почему верхняя средняя кнопка растягивается по горизонтали автоматически, при увеличении отступов у центральной, а левая средняя по вертикали - нет, хотя у обеих указаны
android:layout_width="wrap_content"
android:layout_height="wrap_content"
Остается гадать, баг это или фича.
- KamiSempai
- Сообщения: 1339
- Зарегистрирован: 17 фев 2012, 21:23
- Откуда: Мордор
Re: Урок 7. Layout параметры для View-элементов.
Столкнулся с такой проблемой, если двум элементам задать ширину "wrap_content" и вес "1", то их размеры все равно распределяются не равномерно.
Больше места занимает тот элемент на котором длиннее текст.
Единственное, что я смог придумать, указать ширину одного элемента через абсолютное значение "dp". Но в этом случае прийдется делать отдельный лайот для ландшафтного вида.
Можно как-то решить эту проблему другим способом?
Больше места занимает тот элемент на котором длиннее текст.
Единственное, что я смог придумать, указать ширину одного элемента через абсолютное значение "dp". Но в этом случае прийдется делать отдельный лайот для ландшафтного вида.
Можно как-то решить эту проблему другим способом?
R.id.team
Хватит таскать макулатуру на тренировку! Используй T Note.
Хватит таскать макулатуру на тренировку! Используй T Note.
Re: Урок 7. Layout параметры для View-элементов.
поменяй на fill_parentKamiSempai писал(а):Столкнулся с такой проблемой, если двум элементам задать ширину "wrap_content" и вес "1", то их размеры все равно распределяются не равномерно.
Больше места занимает тот элемент на котором длиннее текст.
Единственное, что я смог придумать, указать ширину одного элемента через абсолютное значение "dp". Но в этом случае прийдется делать отдельный лайот для ландшафтного вида.
Можно как-то решить эту проблему другим способом?
- KamiSempai
- Сообщения: 1339
- Зарегистрирован: 17 фев 2012, 21:23
- Откуда: Мордор
Re: Урок 7. Layout параметры для View-элементов.
Вот оно как. Спасибо, учту в будущем.smival писал(а):поменяй на fill_parent
R.id.team
Хватит таскать макулатуру на тренировку! Используй T Note.
Хватит таскать макулатуру на тренировку! Используй T Note.
Re: Урок 7. Layout параметры для View-элементов.
Можно еще использовать "0dp". Гугл так и рекомендует. Ща дополню урок.KamiSempai писал(а):Вот оно как. Спасибо, учту в будущем.smival писал(а):поменяй на fill_parent
Re: Урок 7. Layout параметры для View-элементов.
как в TextView сделать ориентацию текста вертикальной? В гугле полно как то примеров но рабочего не нашел. Использую TextView в RelativeLayout.
R.id.team
Политика на форуме запрещена
Политика на форуме запрещена
Re: Урок 7. Layout параметры для View-элементов.
Тут вполне рабочие решения, попробуйте: http://stackoverflow.com/questions/2888 ... in-androidrezak90 писал(а):как в TextView сделать ориентацию текста вертикальной? В гугле полно как то примеров но рабочего не нашел. Использую TextView в RelativeLayout.
Re: Урок 7. Layout параметры для View-элементов.
У меня нижние кнопки gravity = bottom right и gravity = bottom left наползли друг на друга, если указать fill_parent, они обе растягиваются на всю ширину экрана (одна на одной получается), мне почему-то казалось что они должны переносить свой текст на следующую строку и увеличиваться вверх - чтобы не мешать друг другу. Можно ли решить эту проблему? или нужен другой layout?
Re: Урок 7. Layout параметры для View-элементов.
лучше кинь сюда лейаут файл, а то на словах трудно понять в чём проблема.Kitty писал(а):У меня нижние кнопки gravity = bottom right и gravity = bottom left наползли друг на друга, если указать fill_parent, они обе растягиваются на всю ширину экрана (одна на одной получается), мне почему-то казалось что они должны переносить свой текст на следующую строку и увеличиваться вверх - чтобы не мешать друг другу. Можно ли решить эту проблему? или нужен другой layout?
R.id.team
Политика на форуме запрещена
Политика на форуме запрещена
Re: Урок 7. Layout параметры для View-элементов.
Код: Выделить всё
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">
<FrameLayout
android:id="@+id/frameLayout1"
android:layout_width="match_parent"
android:layout_height="match_parent">
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="top|left"
android:text="gravity = top left">
</Button>
<Button
android:id="@+id/button2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="top|right"
android:text="gravity = top right">
</Button>
<Button
android:id="@+id/button3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="bottom|left"
android:text="gravity = bottom left">
</Button>
<Button
android:id="@+id/button4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="bottom|right"
android:text="gravity = bottom right">
</Button>
<Button
android:id="@+id/button5"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:text="gravity = center">
</Button>
</FrameLayout>
</LinearLayout>
Re: Урок 7. Layout параметры для View-элементов.
вставил и себе этот код в лейаут, поначалу не было видно, поклацал смену экранов просмотра (вкладка GraphicLayout в верху) и всё появилось. Наверное глюк Eclips'a
R.id.team
Политика на форуме запрещена
Политика на форуме запрещена
Re: Урок 7. Layout параметры для View-элементов.
У меня такой вопрос. На экране находятся 2 картинки. Одна прижата к верху, другая к низу. на нижней картинке налеплен EditText. Вылазит клавиатура, и верхняя картинка, скрывается. Как сделать так чтобы были видны обе картинки?
Re: Урок 7. Layout параметры для View-элементов.
up! так сказать...
Re: Урок 7. Layout параметры для View-элементов.
картинка пропадает или её замещает клавиатура?MeTeOpA писал(а):У меня такой вопрос. На экране находятся 2 картинки. Одна прижата к верху, другая к низу. на нижней картинке налеплен EditText. Вылазит клавиатура, и верхняя картинка, скрывается. Как сделать так чтобы были видны обе картинки?
R.id.team
Политика на форуме запрещена
Политика на форуме запрещена
Re: Урок 7. Layout параметры для View-элементов.
Здравствуйте! До этого урока всё получалось хорошо (иногда находя ответы на форуме), а теперь возникла ситуация которую никак не могу победить! Итак: у меня при создании нового проекта, когда открываю main корень, по умолчанию создается RelativeLayout вместо LinearLayout, как вернуть умолчания? я уже и Eclipse сносил, заново всё настраивал, а воз и ныне..)