1

私は線形レイアウトで苦労しています.線形レイアウトには2つの画像があり、これらの画像は反対側にありますが、画面の向きを変更するとキャンセルボタンが真ん中に来ます.

 <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="horizontal" >

        <ImageView
            android:id="@+id/imageView1"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"          
            android:src="@drawable/askabud" />
        <ImageView
            android:id="@+id/fbcancel"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"         
            android:paddingLeft="200dp"
            android:src="@drawable/fbcancel" />
         <Spinner
            android:id="@+id/quesspinner"
            android:layout_width="50dp"
            android:layout_height="30dp"
            android:drawSelectorOnTop="true"
            android:entries="@array/fblist"
            android:visibility="gone" />

 </LinearLayout>

どこが間違っているのかわからない。どんな助けでも大歓迎です。

ここに私の完全なxmlファイルがあります

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


    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="vertical"
        android:background="#FFFFFF" >
        <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="horizontal" >

        <ImageView
            android:id="@+id/imageView1"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"          
            android:src="@drawable/askabud" />
        <ImageView
            android:id="@+id/fbcancel"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"         
            android:paddingLeft="200dp"
            android:src="@drawable/fbcancel" />
         <Spinner
            android:id="@+id/quesspinner"
            android:layout_width="50dp"
            android:layout_height="30dp"
            android:drawSelectorOnTop="true"
            android:entries="@array/fblist"
            android:visibility="gone" />

 </LinearLayout>

        <View
            android:layout_width="wrap_content"
            android:layout_height="0.7dip"
            android:background="#3b5998" />

        <RelativeLayout
            android:layout_width="match_parent"
            android:layout_height="165dp"
            android:orientation="horizontal" >

            <ImageView
                android:id="@+id/autodelete"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentBottom="true"
                android:layout_alignRight="@+id/fbshare"
                android:src="@drawable/autodelete" />

            <Spinner
                android:id="@+id/spinner"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignLeft="@+id/autodelete"
                android:layout_alignTop="@+id/autodelete" 
                android:visibility="gone"
                android:entries="@array/fblist" />

            <EditText
                android:id="@+id/fbedittext"
                android:layout_width="wrap_content"
                android:layout_height="135dp"
                android:layout_alignParentBottom="true"
                android:layout_alignParentLeft="true"
                android:layout_marginLeft="16dp"
                android:layout_toLeftOf="@+id/fbshare"
                android:background="@drawable/roundcorners"
                android:ems="10"
                android:hint="@string/fbhint"
                android:windowSoftInputMode="stateHidden"
                android:textSize="14sp" />

            <ImageView
                android:id="@+id/fbshare"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentRight="true"
                android:layout_alignTop="@+id/fbedittext"
                android:layout_marginRight="15dp"
                android:layout_marginLeft="5dp"
                android:paddingRight="5dp"
                android:src="@drawable/newfb1" />

            <ImageView
                android:id="@+id/fbpeople"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_above="@+id/autodelete"
                android:layout_alignLeft="@+id/fbshare"
                android:layout_marginBottom="18dp"
                android:src="@drawable/people2" />

        </RelativeLayout>

        <TextView
            android:id="@+id/placeName"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:visibility="gone"
            android:paddingTop="15dp"
            android:paddingLeft="10dp" 
            android:textColor="#000000"
            android:textStyle="bold"  />

        <TextView
            android:id="@+id/placeAddress"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:visibility="gone"
            android:paddingTop="10dp"
            android:paddingLeft="10dp"
            android:textColor="#000000" 
            android:textStyle="bold" />

        <TextView
            android:id="@+id/textView1"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:paddingTop="5dp"
            android:text="@string/fbtext"
            android:textColor="#000000"
            android:paddingLeft="10dp"
            android:paddingBottom="10dp" />
    </LinearLayout>
4

2 に答える 2

0

しかし、画面の向きを変更すると、キャンセルボタンが真ん中に来ます

これは、何が起こっているかについての少しあいまいな説明です。

横向きから縦向きに切り替わったと思いますか?

あなたはそれをどのように見せたいか、そして今どのように見えるかを説明していません。(縦向きと横向き)。エラーはないようですので、すべてのコード、文字列、および値を再作成せずにお手伝いしたい場合は.

cancelButton の paddingLeft を変更してみましたか。縦向きモードのようですが、これらの 2 つのイメージビューを並べて配置するのに十分なスペースがない可能性があり、効果的にもう一方の下部と左側から 200 dp を押し出します。

于 2013-02-21T11:00:01.240 に答える
0

編集

これを試して

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal" >

  <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
         android:layout_gravity="left"    >
        <ImageView
            android:id="@+id/imageView1"
            android:layout_width="wrap_content"
            android:layout_height="fill_parent"  
            android:src="@drawable/ic_launcher" />
        </LinearLayout>
        <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_gravity="right"
         android:gravity="right"
         >
        <ImageView
            android:id="@+id/fbcancel"
            android:layout_width="wrap_content"
            android:layout_height="fill_parent"         
            android:src="@drawable/ic_launcher" />
        </LinearLayout>
         <Spinner
            android:id="@+id/quesspinner"
            android:layout_width="50dp"
            android:layout_height="30dp"
            android:drawSelectorOnTop="true"
            android:visibility="gone" />

 </LinearLayout>

あなたの要件によると、それは動作します...

ランドスケープモードは別途デザインしてみてください。これを行うには、ディレクトリ res/layout-land に同じ名前のファイルを作成します。ランドスケープ用の別のデザインがない場合は、画面の向きを Potrait モードに修正してください。これは、アクティビティ レベルでもアプリケーション レベルでも実行できます。固定方向を設定するには android:screenOrientation="portrait"

于 2013-02-21T11:05:04.147 に答える