Kamrit
@Kamrit
QA Engineer

Адаптивность верстки на андроид?

Подскажите как сделать что бы кнопки на всех екранах отображались одинаково? Бо когда задаю android:layout_marginTop="250dp" то при большем разширении экрана кнопка слетает
  • Вопрос задан
  • 534 просмотра
Решения вопроса 1
a13xsus
@a13xsus
Lazy developer
Неясно, зачем использовать настолько большие значения для отступов, но если уж нужно, тогда используй предопределенные значения для каждого типа экрана из xml файла в res/values.

Создай, например, файл dimens.xml в res/values подобного содержания

<resources
    xmlns:android="http://schemas.android.com/apk/res/android">
    <dimen name="my_margin">250dp</dimen>
</resources>


И продублируй его для каждого типа экрана в папках values-large, values-sw600dp, values-xlarge и так далее, всякий раз изменяя значение my_margin на определенное для каждого типа экрана.

Тогда в layout указывай все значения с помощью переменных. Например,

android:layout_margin="@dimen/my_margin"

Подробнее о поддержке разных типов экрана здесь: https://developer.android.com/guide/practices/scre...
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@AlexeyVD
Как вариант можно использовать PercentRelativeLayout или PercentFrameLayout c параметром app:layout_marginTopPercent
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы