1

次のようなレイアウトを作成したいと思います。

ここに画像の説明を入力

背景、白い四角、V サインの 3 種類の画像があります。

ボックスを左右に動かしたい場合、写真のように配置するにはどうすればよいですか

onClickがトリガーされたときにフェードイン\アウトするVサイン。

私が試してみました:

   <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="right"
    android:background="@drawable/off_background">


             <ImageView
            android:id="@+id/handle"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentTop="true"
            android:layout_centerHorizontal="true"
             android:src="@drawable/handle"
            android:scaleType="centerInside" />

    <ImageView android:id="@+id/switch_v"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:src="@drawable/switch_v"
        android:layout_gravity="center"
        android:scaleType="centerInside"/>



</RelativeLayout>

これは正しく注文できますが、正しくポーズされていません:

ここに画像の説明を入力

4

2 に答える 2

2

この問題には使用する必要がありますlayout_align。あなたの例でテストしましたが、正しく機能しました。

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="right"
android:background="@drawable/off_background" >

<ImageView
    android:id="@+id/handle"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentTop="true"
    android:layout_centerHorizontal="true"
    android:scaleType="centerInside"
    android:src="@drawable/handle" />

<ImageView
    android:id="@+id/switch_v"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignLeft="@id/handle"
    android:layout_alignTop="@id/handle"
    android:layout_alignBottom="@id/handle"
    android:layout_alignRight="@id/handle"
    android:layout_gravity="center"
    android:scaleType="centerInside"
    android:src="@drawable/switch_v" />
</RelativeLayout>
于 2013-10-29T14:30:33.760 に答える
0

白い四角と V サインのドローアブルを作成します。

white_square_and_V_sign.xml

<?xml version="1.0" encoding="utf-8"?>

<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item >
        <bitmap
            android:src="@drawable/handle"/>
    </item>
    <item>
        <bitmap
            android:gravity="center"
            android:src="@drawable/switch_v"/>
    </item>  
</layer-list>  

白い正方形のドローアブルを作成します。

white_square.xml

<?xml version="1.0" encoding="utf-8"?>

<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item >
        <bitmap
            android:src="@drawable/handle"/>
    </item>
</layer-list>  

セレクターを作成します。

mySelector.xml

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:drawable="@drawable/white_square"
          android:state_pressed="true" />
    <item android:drawable="@drawable/white_square_and_V_sign" />
</selector>  

レイアウトで使用します。

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="right"
    android:background="@drawable/off_background" >

    <Button
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="@drawable/mySelector"/>

</RelativeLayout>
于 2013-10-29T15:16:16.510 に答える