Поддержка разных размеров экрана - PullRequest
0 голосов
/ 03 июня 2019

Мой пользовательский интерфейс подходит для моего виртуального устройства, но когда я запускаю приложение на своем телефоне, пользовательский интерфейс становится слишком широким, и я теряю часть от RHS моего устройства.

Я прочитал эту статью; (https://developer.android.com/training/multiscreen/screensizes.html) В нем говорится об использовании макета ограничения, но прежде чем я начну вносить массовые изменения в мой XML, кто-нибудь может увидеть какие-либо явные недостатки?

<RelativeLayout 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="horizontal"
    tools:context="com.example.wbc.TabFragment0"
    android:id="@+id/frag7"
    android:padding="5dp">

    <TextView
        android:id="@+id/todayDate0"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
        android:textSize="25sp"/>


    <TableLayout
        android:id="@+id/tab_layout1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/todayDate0">

        <TableRow
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginTop="30dp">

            <TextView
                android:id="@+id/rink1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center"
                android:text="1"
                android:textSize="30sp" />

            <Button
                android:id="@+id/twelve7R1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:onClick="bookRink"
                android:tag="7112"
                android:text="12:00"
                tools:ignore="OnClick" />

            <Button
                android:id="@+id/two7R1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:onClick="bookRink"
                android:tag="7114"
                android:text="14:00"
                tools:ignore="OnClick" />

            <Button
                android:id="@+id/four7R1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:onClick="bookRink"
                android:tag="7116"
                android:text="16:00"
                tools:ignore="OnClick" />

            <Button
                android:id="@+id/six7R1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:onClick="bookRink"
                android:tag="7118"
                android:text="18:00"
                tools:ignore="OnClick" />
        </TableRow>


    </TableLayout>
</RelativeLayout>

Ответы [ 2 ]

0 голосов
/ 05 июня 2019

Спасибо за ваши посты, по какой-то причине, теперь он работает как надо, я не внес никаких изменений, кроме как перезагрузить APK на мой телефон .... извиняюсь за трату вашего времени.

0 голосов
/ 03 июня 2019

Пожалуйста, опубликуйте картинку, которая показывает желаемый результат для вашего файла макета. Здесь я принял макет результата, как на изображении.

Схема результата

Я использовал ConstraintLayout, который может настраивать режимы просмотра во время выполнения. Это помогает устройству настроить макет в соответствии с размером экрана любого устройства

ConstraintLayout согласно Google

<androidx.constraintlayout.widget.ConstraintLayout 
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal"
android:id="@+id/frag7"
android:padding="5dp">

<TextView
    android:id="@+id/todayDate0"
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    android:layout_centerHorizontal="true"
    android:textSize="25sp"
    android:text="Today's Date 4.06.19"
    app:layout_constraintEnd_toEndOf="@+id/tab_layout1"
    app:layout_constraintStart_toStartOf="@+id/tab_layout1"
    app:layout_constraintTop_toTopOf="parent" />


<TableLayout
    android:id="@+id/tab_layout1"
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    android:layout_below="@+id/todayDate0"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintHorizontal_bias="0.307"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toBottomOf="@+id/todayDate0">

    <TableRow
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="30dp">

        <TextView
            android:id="@+id/rink1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center"
            android:text="1"
            android:textSize="30sp" />

        <Button
            android:id="@+id/twelve7R1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:onClick="bookRink"
            android:tag="7112"
            android:text="12:00"
            tools:ignore="OnClick" />

        <Button
            android:id="@+id/two7R1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:onClick="bookRink"
            android:tag="7114"
            android:text="14:00"
            tools:ignore="OnClick" />

        <Button
            android:id="@+id/four7R1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:onClick="bookRink"
            android:tag="7116"
            android:text="16:00"
            tools:ignore="OnClick" />

        <Button
            android:id="@+id/six7R1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:onClick="bookRink"
            android:tag="7118"
            android:text="18:00"
            tools:ignore="OnClick" />
    </TableRow>


</TableLayout>
</androidx.constraintlayout.widget.ConstraintLayout>
...