Есть ли макет, который позволяет форматировать объекты на xml таким образом, чтобы вы могли позиционировать кнопки и тексты везде, где хотите, и не изменять их по отношению к другим полям? Когда я попытался использовать relativelayout, это был кошмар, потому что перемещение одной коробки делало все остальное. Когда я попробовал linearlayout, (возможно, я использовал его неправильно, но я пробовал в течение двух часов). Я не мог перемещать коробки точно там, где я хотел, это было бы в общем направлении, но я не мог точно настроить размещение.Формат XML-формата
ответ
Я пытаюсь поставить кнопки там, где я хочу, каждый независимо друг от друга
Пожалуйста, обратите внимание, что есть огромного количества различных Android устройств на рынке, с другим экраном размеров и разрешений.
Ваш долг - адаптировать ваше приложение, чтобы он мог отлично работать во всех них.
В вашем случае я настоятельно рекомендую вам привыкнуть к RelativeLayout
.
Нетрудно понять, как это работает.
Вы можете планировать, как Интерфейс пользователя и User Experience будет выглядеть перед тем создания экрана, так что если вам нужно внести какие-либо изменения в будущем вы можете свести к минимуму работу.
Вы можете сделать это, либо используя бумагу и ручку, или использовать некоторые инструменты проектирования, как fluidui.com/
Вы можете использовать AbsoluteLayout. Этот макет позволяет вам указать координаты X/Y всех виджетов в макете.
Однако этот макет является одним из наименее гибких. Ваш экран будет привязан непосредственно к разрешению устройства, для которого он создан. Линейные и относительные макеты намного более гибкие, когда ваше приложение должно работать на различных телефонах/планшетах и т. Д.
В соответствии с желаемой планировкой, которую вы описали в комментариях, я предлагаю следующее:
Использовать RelativeLayout
или GridLayout
, установите максимальное количество кнопок, которые понадобятся на нем, а затем показать или скрыть кнопки динамически параметр XML «Видимость» (метод класса - setVisibility) корневого класса View
. Кнопки не будут отображаться, но удерживают их положение.
Это макет я использовал (1 одного RelativeLayout)
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@android:color/black"
>
<Button
android:id="@+id/btnCenter"
android:layout_width="80dp"
android:layout_height="80dp"
android:layout_centerInParent="true"
android:background="@drawable/ball"
android:text="Btn 0"
android:textColor="@android:color/white"
android:textSize="24sp"
android:textStyle="bold"
/>
<Button
android:id="@+id/btnTop"
android:layout_width="80dp"
android:layout_height="80dp"
android:layout_above="@id/btnCenter"
android:layout_alignLeft="@id/btnCenter"
android:background="@drawable/ball"
android:text="Btn 1"
android:textColor="@android:color/white"
android:textSize="24sp"
android:textStyle="bold"
/>
<Button
android:id="@+id/btnLeft"
android:layout_width="80dp"
android:layout_height="80dp"
android:layout_alignTop="@id/btnCenter"
android:layout_toLeftOf="@id/btnCenter"
android:background="@drawable/ball"
android:text="Btn 2"
android:textColor="@android:color/white"
android:textSize="24sp"
android:textStyle="bold"
/>
<Button
android:id="@+id/btnBottom"
android:layout_width="80dp"
android:layout_height="80dp"
android:layout_below="@id/btnCenter"
android:layout_alignLeft="@id/btnCenter"
android:background="@drawable/ball"
android:text="Btn 3"
android:textColor="@android:color/white"
android:textSize="24sp"
android:textStyle="bold"
/>
<Button
android:id="@+id/btnRight"
android:layout_width="80dp"
android:layout_height="80dp"
android:layout_alignTop="@id/btnCenter"
android:layout_toRightOf="@id/btnCenter"
android:background="@drawable/ball"
android:text="Btn 4"
android:textColor="@android:color/white"
android:textSize="24sp"
android:textStyle="bold"
/>
</RelativeLayout>
Чтобы получить эту "сетку", так дизайн
не оптимизирована, я должен использовать стиль для общих символов кнопок.
Чтобы добавить еще 4 кнопки, это не имеет большого значения.
Ключевые слова: О Relativity.
Обратите внимание, как я установил соответствующие атрибуты, чтобы выровнять все кнопки к центральному.
В любом случае, есть цифры в этих кнопках, вы видите.
Более чем достаточно для вашего запроса 1, 2 или 3 цифры.
- 1. Формат даты формат php
- 2. Формат и формат CKeditor
- 3. Формат
- 4. Формат и формат Proc SAS
- 5. Twitter Формат бутстрапа Формат поля
- 6. формат десятичный, указав конкретный формат
- 7. Формат конкатенации в простой формат
- 8. delphi дата формат формат ошибка
- 9. String.Format (формат, дата) игнорирует формат
- 10. Php формат и формат даты
- 11. MySQL формат даты DATE формат
- 12. формат: первый формат структура использование
- 13. Формат файла Gpx, какой формат?
- 14. формат времени и формат строки
- 15. Формат координат формат Javascript [NODEJS]
- 16. Формат OMF для COFF формат
- 17. Linux переносит длинный формат в широкий формат
- 18. Какой формат NSCoder использует формат .pbxproj?
- 19. Формат ввода HTML = формат даты «даты»
- 20. конвертировать формат .net в формат javascript
- 21. Формат запросов MySQL результат в нужный формат
- 22. Пайтон JSON формат (с колбой) Формат
- 23. Конвертировать текстовый формат в формат числа
- 24. Как преобразовать формат строки в формат даты?
- 25. sas7bdat формат даты в формат даты R
- 26. RichTextBox.RTF возвращает формат Unicode или формат ANSI?
- 27. Изменить цифровой формат, неправильный формат набора данных
- 28. Как конвертировать формат даты в формат GB?
- 29. C# Формат даты, не отображающий местный формат
- 30. DateTime Формат строки для недействительных Формат строки
Вы можете использовать комбинацию обоих :) – Paritosh
Как слить их? В xml у меня будет 2 отдельных элемента linearlayout и relativelayout или они будут вложенными? – Sygnerical
'все перемещается относительно друг друга, поэтому, если я перемещаю одну вещь, все остальное изменяется из-за относительной компоновки. ** ** НЕТ **. Все предметы должны быть размещены относительно контейнера и/или между ними. 'Когда я использую linearlayout, кнопки могут быть помещены только в сетку' ** NO **. Таким образом, все предметы размещаются. По горизонтали или по вертикали (по умолчанию), как вы указываете. –