我嘗試並排放置三個視圖:text1 - img - text2。 Img必須始終在text1上(沒有額外的空間)。我試圖用佈局權重來解決這個問題,但是通過這個解決方案,img始終處於父視圖的中心。並排視圖,動態尺寸
預期結果:
文本1短,文本2長。不要文本1和IMG之間添加空間
+----------------------------------------+
| [Text1 a] [img] [Text2 asdfghjklz... ] |
+----------------------------------------+
ellipsized文字,保持IMG中心
+----------------------------------------+
| [Text1 asdfg...] [img] [Text2 asdf...] |
+----------------------------------------+
文本1長,文本2短
+----------------------------------------+
| [Text1 asdfgadfafs...] [img] [Text2 a] |
+----------------------------------------+
這是最接近我可以得到(使用重量),但問題是,如果text1短,img仍然在佈局的中心。我應該總是直接在text1的右側。
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<TextView
android:id="@+id/textview1"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:ellipsize="end"
android:maxLines="1"
tools:text="Text1 asdfghjkl" />
<ImageView
android:id="@+id/img"
android:layout_width="18dp"
android:layout_height="18dp"
android:layout_marginLeft="4dp"
android:layout_marginRight="4dp"
android:src="@drawable/ic_arrow" />
<TextView
android:id="@+id/textview2"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:ellipsize="end"
android:maxLines="1"
tools:text="Text2 asdfghjkl" />
</LinearLayout>
那麼如果Text1 long,img&Text2短是什麼要求? – sJy
新增了一個例子,所以儘可能地將text2推向右邊。 – devha