2012-02-09 13 views
2

私は単純な相対レイアウトを持っています。つまり、ImageView(iv1)とTextView(tv1)がiv1の左側にあります。残念ながら、私はtv1は見ません。さらに、階層ビューアでもそれを見つける手助けをすることはできません。layout_toRightOf作品とlayout_toLeftOfは、解決する方法はありませんか?

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="match_parent" 
android:layout_height="wrap_content" 
android:gravity="right" 
android:background="@android:color/white" 
> 

<ImageView 
    android:id="@+id/iv1" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:src="@drawable/ic_launcher" /> 

<TextView 
    android:id="@+id/tv1" 
    android:layout_toLeftOf="@+id/iv1" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:text="TextView" /> 

</RelativeLayout> 

それはそのようになっています。私はアンドロイドを変更する場合は、しかし、

enter image description here

:layout_toLeftOf = "@ + ID/IV1" アンドロイドへ:layout_toRightOf = "@ + ID/IV1"、私のテキストビューはイメージビューの右側に配置されます。 toRightOfが動作し、toLeftOfが動作しないようです。 は、ここでは、どのように見えるか:

enter image description here

問題は何ですか? layout_toLeftOfを動作させるには?

答えて

2

セットImageViewのプロパティalign_parent_right= true;

+1

これは機能しますが、なぜですか? – wangqi060934

5

変更:

<TextView 
    android:id="@+id/tv1" 
    android:layout_toLeftOf="@+id/+iv1" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:text="TextView" /> 

へ:

<TextView 
    android:id="@+id/tv1" 
    android:layout_toLeftOf="@id/iv1" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:text="TextView" /> 

あなたは代わりに、@のID/IV1のTextViewの中であなたのtoLeftOfに@ + ID/IV1を使用しています。 また、画像ビューにはビュー内の特定の場所を指定する必要があります。それを整列させてみてください:layout_parentTop = true

+0

私が知っている限り、@ + idは新しいIDを作成することを意味し、@idは既存のオブジェクトを使用することを意味します。しかし、あなたが提案したように自分のレイアウトを置き換えると、 "resource @ id/iv1を解決できませんでした"というメッセージが表示されます。それは何のためですか? –

+0

レイアウト(コードではなく実際のビュー)を表示しようとしているときに表示される場合は、バグです。 Eclipseがレイアウトに加えられた変更を取得しないことがあります。私は時々XMLコードと私のレイアウトのビューを2回切り替えることでこれを軽視します... – ezcoding

0

私の場合(このレイアウトではありません)、問題はRelativeLayoutのandroid:layout_widthです。 wrap_contentまたはmatch_parentの場合、レイアウトがばらばらになりました。たとえば、300dpというように設定すると、すべてがうまくいきました。

関連する問題