<ScrollView xmlns:Android="http://schemas.Android.com/apk/res/Android"
xmlns:tools="http://schemas.Android.com/tools"
Android:layout_width="match_parent"
Android:layout_height="match_parent"
Android:orientation="vertical" >
<RelativeLayout
Android:layout_width="wrap_content"
Android:layout_height="wrap_content" >
<TextView
Android:id="@+id/textView1"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_alignParentTop="true"
Android:layout_alignParentLeft="true"
Android:textSize="30sp" />
<TextView
Android:id="@+id/textView2"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_below="@id/textView1"
Android:textSize="20sp" />
<TextView
Android:id="@+id/textView3"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_below="@id/textView2"
Android:textSize="20sp" />
<TextView
Android:id="@+id/textView4"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_below="@id/textView3"
Android:textSize="20sp" />
<TextView
Android:id="@+id/textView5"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_below="@id/textView4"
Android:textSize="20sp" />
<TextView
Android:id="@+id/textView6"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_below="@id/textView5"
Android:textSize="20sp" />
<TextView
Android:id="@+id/textView7"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_below="@id/textView6"
Android:textSize="20sp" />
<TextView
Android:id="@+id/textView8"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_below="@id/textView7"
Android:textSize="20sp" />
<TextView
Android:id="@+id/textView9"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_below="@id/textView8"
Android:textSize="20sp" />
<Button
Android:id="@+id/button1"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_below="@id/textView9" />
<TextView
Android:id="@+id/textView10"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:text="商店圖片:"
Android:textSize="15sp"
Android:layout_alignParentTop="true"
Android:layout_alignLeft="@id/imageView1" />
<ImageView
Android:id="@+id/imageView1"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_alignParentRight="true"
Android:layout_below="@id/textView10"
Android:contentDescription="@string/top" />
</RelativeLayout>
Simple output:
textview1 textview9
textview2 imageview1
.
.
.
button1
上記のレイアウトは水平に分割されたページで、左側にはtextviewのリストがあり、右側にはイメージビューがあります。問題は:textviewコンテンツが長すぎる場合、imageviewはそのコンテンツとオーバーラップしますが、bringtofront()を使用する以外に、テキストビューがイメージビューとオーバーラップする場合、テキストビューの幅を(xmlで)サイズ変更する方法はありますか?
この種のデザインを使用している場合は、線形レイアウトを使用する必要があります。その中のテーブル行を使用して、この種のビューを表示します。
また、ビューが他のビューと重ならないように重みを使用します。このようにしてみてください:
<ScrollView xmlns:Android="http://schemas.Android.com/apk/res/Android"
xmlns:tools="http://schemas.Android.com/tools"
Android:layout_width="match_parent"
Android:layout_height="match_parent"
Android:orientation="vertical" >
<LinearLayout
Android:layout_width="match_parent"
Android:layout_height="wrap_content"
Android:orientation="vertical" >
<TableRow
Android:layout_width="match_parent"
Android:layout_height="wrap_content"
Android:gravity="center"
Android:weightSum="10">
<TextView
Android:id="@+id/textView1"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_alignParentTop="true"
Android:layout_alignParentLeft="true"
Android:textSize="30sp"
Android:text="test"
Android:layout_weight="5" />
<TextView
Android:id="@+id/textView2"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_below="@id/textView1"
Android:textSize="20sp"
Android:text="test"
Android:layout_weight="5"/>
</TableRow>
</LinearLayout>
</ScrollView>
それが役に立てば幸い!!
最初のアイテムでlayout_toStartOfを使用し、2番目のアイテム+ idを二重引用符で囲みます
<?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="match_parent"
Android:orientation="horizontal" >
<TextView
Android:id="@+id/email"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_alignParentLeft="true"
Android:layout_centerVertical="true"
Android:layout_toStartOf="@+id/selectaccount"
Android:text="very long text which used to overlap over radio button"
Android:textAppearance="?android:attr/textAppearanceMedium" />
<RadioButton
Android:id="@+id/selectaccount"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_alignParentRight="true"
Android:layout_centerVertical="true" />
</RelativeLayout>
textviewでこの引数に注意してください
Android:layout_toStartOf="@+id/selectaccount"
XMLは上から下に読み取られます
これがAndroidでのレイアウトのレンダリング方法です
Lastoneのように、すべてのtextviewsをleftOf imageviewに揃えます:Android:layout_toLeftOf="@id/imageView1"
私は同様の問題を抱えており、ここおよび他の同様のスレッドで提案されたほとんどすべてを試しました。
私のためにそれをしたもう一つのことは、追加することでした:
Android:layout_toStartOf="@+id/youroverlappeditem"
そのため、重複するアイテムは、重複するアイテムまでしか実行されません。
layout_toLeftOf
単独では不十分でした
そしてもちろん ellipsize="end"
は必要に応じて必要でした。
私のものは、相対レイアウトのrecyclerview
でした。
<LinearLayout xmlns:Android="http://schemas.Android.com/apk/res/Android"
Android:layout_width="fill_parent"
Android:layout_height="fill_parent"
Android:weightSum="1.0" >
<LinearLayout
Android:layout_width="0dp"
Android:layout_height="match_parent"
Android:layout_weight=".5"
Android:orientation="vertical" >
<TextView
Android:id="@+id/textView1"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:text="Large Text"
/>
<TextView
Android:id="@+id/textView2"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:text="Medium Text"
/>
<TextView
Android:id="@+id/textView3"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:text="Medium Text"
/>
</LinearLayout>
<LinearLayout
Android:layout_width="0dp"
Android:layout_height="match_parent"
Android:layout_weight=".5"
Android:orientation="vertical" >
<ImageView
Android:id="@+id/imageView1"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:src="@drawable/ic_launcher" />
</LinearLayout>
制約レイアウト を試してください。レイアウトを簡素化します。