Android относительные проблемы макета - PullRequest
3 голосов
/ 15 сентября 2011

Я использую относительный макет, чтобы создать нечто похожее на изображение. Но на некоторых телефонах (см. Изображение 2) нижняя кнопка обрезана, и мы не можем видеть весь макет. Разве цель относительного расположения не настраивается в зависимости от того, какой это телефон?

Что я могу сделать, чтобы это исправить? Если нет простого способа, нужно ли просто прокрутить его вниз, чтобы мы могли увидеть кнопку?

Спасибо enter image description here

enter image description here

Вот мой макет xml

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical" android:layout_width="fill_parent"
    android:background="@drawable/settings" android:layout_height="fill_parent"
    android:weightSum="1">
    <RelativeLayout android:layout_width="fill_parent" android:layout_height="45dp" android:background="@drawable/mytitlebackground">
        <Button android:layout_height="wrap_content" android:id="@+id/btnDeleteAccount" android:layout_width="wrap_content" android:text="@string/deleteaccount" android:layout_alignParentTop="true" android:layout_alignParentLeft="true"></Button>
        <Button android:layout_height="wrap_content" android:id="@+id/btnhistory" android:layout_width="wrap_content" android:text="@string/history" android:layout_alignParentTop="true" android:layout_alignParentRight="true"></Button>
    </RelativeLayout>
    <RelativeLayout android:id="@+id/relativeLayout1" android:layout_width="262dp" android:layout_height="80dp" android:background="#333333" android:layout_below="@+id/textView1" android:layout_centerHorizontal="true" android:layout_marginTop="17dp">
        <TextView android:textStyle="bold" android:textColor="#ffffff" android:textSize="13sp" android:layout_marginTop="14dp" android:layout_marginLeft="14dp" android:text="@string/Name" android:layout_alignParentLeft="true" android:layout_height="wrap_content" android:layout_width="wrap_content" android:layout_alignParentTop="true" android:id="@+id/textView2"></TextView>
        <TextView android:textStyle="bold" android:textSize="13sp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textColor="#ffffff" android:id="@+id/textView3" android:text="@string/BackgroundUpdates" android:layout_below="@+id/textView2" android:layout_alignLeft="@+id/textView2" android:layout_marginTop="16dp"></TextView>
        <ToggleButton android:layout_width="wrap_content" android:id="@+id/toggleButtonBGUpdates" android:layout_height="wrap_content" android:layout_below="@+id/tVName" android:layout_toRightOf="@+id/textView3" android:layout_marginLeft="28dp"></ToggleButton>
        <TextView android:textSize="13sp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textColor="#ffffff" android:id="@+id/tVName" android:text="name" android:layout_alignTop="@+id/textView2" android:layout_toRightOf="@+id/textView2" android:layout_marginLeft="19dp"></TextView>
    </RelativeLayout>
    <TextView android:text="@string/GPSInformation" android:layout_height="wrap_content" android:textAppearance="?android:attr/textAppearanceLarge" android:layout_width="wrap_content" android:id="@+id/textView4" android:layout_below="@+id/relativeLayout1" android:layout_centerHorizontal="true" android:layout_marginTop="16dp"></TextView>
    <RelativeLayout android:id="@+id/relativeLayout2" android:layout_width="262dp" android:layout_height="130dp" android:background="#333333" android:layout_below="@+id/textView4" android:layout_alignLeft="@+id/relativeLayout1">
        <ImageView android:layout_marginLeft="18dp" android:layout_alignParentBottom="true" android:layout_width="wrap_content" android:layout_alignParentLeft="true" android:id="@+id/imageView1" android:layout_height="wrap_content" android:src="@drawable/fullbattery" android:layout_marginBottom="14dp"></ImageView>
        <ImageView android:layout_alignTop="@+id/imageView1" android:layout_alignParentRight="true" android:layout_width="wrap_content" android:layout_marginRight="18dp" android:id="@+id/imageView2" android:layout_height="wrap_content" android:src="@drawable/halfbattery"></ImageView>
        <RadioGroup android:layout_width="wrap_content" android:layout_alignParentTop="true" android:id="@+id/rGTimer" android:orientation="horizontal" android:layout_alignParentLeft="true" android:layout_height="wrap_content">
            <RadioButton android:layout_height="wrap_content" android:id="@+id/r30mins" android:text="@string/updateevery30mins" android:textSize="13sp" android:layout_width="130dp" android:checked="true"></RadioButton>
            <RadioButton android:layout_height="wrap_content"
    android:id="@+id/r10mins" android:text="@string/updateevery10mins"
    android:textSize="13sp" android:layout_width="130dp"></RadioButton>
        </RadioGroup>
    </RelativeLayout>
    <Button android:layout_height="wrap_content" android:id="@+id/btnRenableHelpScreen" android:layout_width="wrap_content" android:text="@string/Turnonhelpscreens" android:layout_below="@+id/relativeLayout2" android:layout_alignRight="@+id/textView4" android:layout_marginTop="14dp"></Button>
    <TextView android:text="@string/AccountInformation" android:layout_height="wrap_content" android:textAppearance="?android:attr/textAppearanceLarge" android:layout_width="wrap_content" android:id="@+id/textView1" android:layout_alignParentTop="true" android:layout_centerHorizontal="true" android:layout_marginTop="55dp"></TextView>

</RelativeLayout>

Ответы [ 2 ]

1 голос
/ 15 сентября 2011

Есть два пути ............

1). Вы должны создать изображение в соответствии с вашим макетом в Android. Установите их правильно, ваша кнопка экрана справки видит правильно, и проблема решена, но это иногда создает проблему размытия изображений, а также вам нужно уменьшить расстояние между компоненты .......... и это лучший способ, которым я использовал этот способ во многих приложениях

2). Добавить полосу прокрутки от начала первого макета .............

0 голосов
/ 11 января 2017

Пожалуйста, отметьте Размер шрифта в настройках телефона на вкладке Дисплей Если это было отрегулировано, тогда вы должны использовать dp вместо sp , чтобы установить Размер текстового представления

Это работает в моей проблеме, должно работать и на вашу.

...