ListView
各行に次の1.2 が含まれてい
ますTextView
。Button
にはTextView
、複数の長さのテキストを含めることができます。そのため、リストはぎこちなく表示されます。各リスト項目を 2 つのセル (TextView と Button) を持つテーブル行に設定することが解決策になると思いました。これを行う方法はありますか?それとも、これに対するより良い解決策があるのでしょうか?
ListView
各行に次の1.2 が含まれてい
ますTextView
。Button
にはTextView
、複数の長さのテキストを含めることができます。そのため、リストはぎこちなく表示されます。各リスト項目を 2 つのセル (TextView と Button) を持つテーブル行に設定することが解決策になると思いました。これを行う方法はありますか?それとも、これに対するより良い解決策があるのでしょうか?
相対レイアウトを使用して行を表示できます。Relative Layout で、align parent right を true にして右側にボタンを配置し、TextView を Button の左側に設定して、親と一致させます。また、TextView を 1 行に指定し、最後に楕円サイズを true に指定することもできます。これはほんの一例です
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:gravity="center_vertical"
android:layout_height="wrap_content" >
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_alignParentTop="true"
android:text="Button" />
<TextView
android:id="@+id/textView1"
android:layout_width="match_parent"
android:singleLine="true"
android:ellipsize="end"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/button1"
android:layout_alignBottom="@+id/button1"
android:layout_toLeftOf="@+id/button1"
android:text="This is your textView with a very long text. I hope this code serves your problem" />
</RelativeLayout>
表示するテキストに完全に依存する2つのTextViewを使用することもできます。
LinearLayout とその weight 属性です。公式ドキュメントの詳細http://developer.android.com/guide/topics/ui/layout/linear.html