web-dev-qa-db-ja.com

Android相対レイアウトは親を右に揃える

私は次のレイアウトを持っています:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:Android="http://schemas.Android.com/apk/res/Android"
xmlns:tools="http://schemas.Android.com/tools"
Android:id="@+id/test_ll"
Android:layout_width="match_parent"
Android:layout_height="match_parent"
Android:background="@drawable/background"
Android:orientation="vertical" >

<RelativeLayout
    Android:id="@+id/main_layPanelCircle"
    Android:layout_width="wrap_content"
    Android:layout_height="wrap_content"
    Android:layout_gravity="center_vertical|center_horizontal"
    Android:layout_marginLeft="10dp"
    Android:layout_marginRight="10dp"
    Android:layout_marginTop="15dp"
    Android:background="@drawable/main_panel_a"
    Android:orientation="vertical"
    Android:padding="10dp" >

    <ImageView
        Android:id="@+id/main_imgBreachAlert"
        Android:layout_width="wrap_content"
        Android:layout_height="wrap_content"
        Android:layout_marginRight="5dp" />

    <Button
        Android:id="@+id/main_btnMap"
        Android:layout_width="wrap_content"
        Android:layout_height="wrap_content"
        Android:layout_centerHorizontal="true"
        Android:background="@null"
        Android:drawableTop="@drawable/icon_find"
        Android:text="@string/main_locate"
        Android:textColor="@Android:color/white"
        Android:textSize="10sp" />

    <LinearLayout
        Android:id="@+id/main_llPanelCycleMiddle"
        Android:layout_width="wrap_content"
        Android:layout_height="wrap_content"
        Android:layout_below="@+id/main_btnMap"
        Android:layout_centerInParent="true"
        Android:orientation="horizontal" >

        <Button
            Android:id="@+id/main_btnLeft"
            Android:layout_width="wrap_content"
            Android:layout_height="wrap_content"
            Android:background="@null"
            Android:drawableTop="@drawable/icon_call"
            Android:text="@string/main_call"
            Android:textColor="@Android:color/white"
            Android:textSize="10sp"
            Android:visibility="visible" />

        <Button
            Android:id="@+id/main_btnEmergency"
            Android:layout_width="wrap_content"
            Android:layout_height="wrap_content"
            Android:background="@null"
            Android:drawableTop="@drawable/icon_emergency"
            Android:scaleType="center"
            Android:text="@string/main_emergency"
            Android:textColor="@Android:color/white"
            Android:textSize="9sp"
            Android:textStyle="bold" />

        <Button
            Android:id="@+id/main_btnRight"
            Android:layout_width="wrap_content"
            Android:layout_height="wrap_content"
            Android:background="@null"
            Android:drawableTop="@drawable/icon_store"
            Android:text="@string/main_store"
            Android:textColor="@Android:color/white"
            Android:textSize="10sp" />
    </LinearLayout>

    <Button
        Android:id="@+id/main_btnMore"
        Android:layout_width="wrap_content"
        Android:layout_height="wrap_content"
        Android:layout_below="@+id/main_llPanelCycleMiddle"
        Android:layout_centerHorizontal="true"
        Android:background="@null"
        Android:drawableTop="@drawable/icon_more"
        Android:text="@string/main_more"
        Android:textColor="@Android:color/white"
        Android:textSize="10sp" />
</RelativeLayout>

</LinearLayout>

Main_imgBreachAlert Android:layout_alignParentLeft = "true"を設定すると、すべてがOK(左の画像)になりますが、右に設定すると、相対的なレイアウトのストレッチ(左の画像)がマイニングされます。

http://i.imgur.com/uDJqF0k.jpg?1

この問題を解決する方法を教えてください。

Thnx

16
Damir

Android:layout_centerInParent="true"およびレイアウトの中央に画像を配置する場合は、alignParentLeft属性を削除します。

右に揃えるだけの場合は、Android:layout_alignParentRight="true"

<ImageView
    Android:id="@+id/main_imgBreachAlert"
    Android:layout_width="wrap_content"
    Android:layout_height="wrap_content"
    Android:layout_alignParentRight="true"
    Android:layout_marginRight="5dp" />
39
Flynn81