我想在Android中创建一个ListFragment,并为每个元素创建一个背景,如下所示:
我想从ListAdapter的代码中设置theese背景的宽度。我想创建list元素的布局是这样的:
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
xmlns:android="http://schemas.android.com/apk/res/android">
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:minHeight="40dp"
android:id="@+id/surveyListRow_upperLayout"
android:layout_marginTop="7dp"
android:layout_marginBottom="7dp">
<RelativeLayout
android:layout_marginLeft="23dp"
android:layout_width="40dp"
android:layout_height="40dp"
android:id="@+id/surveyListRow_ringLayout"
android:background="#FFFFFF"
android:layout_centerVertical="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true" />
<TextView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:textColor="@color/textColor"
android:gravity="center"
android:id="@+id/surveyListRow_surveyName"
android:layout_centerVertical="true"
android:layout_centerHorizontal="true"
android:layout_marginLeft="55dp"
android:layout_marginRight="105dp"/>
<TextView
android:layout_width="80dp"
android:layout_height="match_parent"
android:textSize="18sp"
android:gravity="center"
android:id="@+id/surveyListRow_surveyPrize"
android:layout_centerVertical="true"
android:layout_alignParentRight="true"
android:layout_alignParentEnd="true"/>
</RelativeLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:minHeight="57dp"
android:orientation="horizontal">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#FF0000"
android:layout_weight="30"/>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="70"/>
</LinearLayout>
</RelativeLayout>
我将设置weight
个孩子的LinearLayout
属性,以设置背景宽度。
我的问题是,当宽度中的文字太长时(正如你在第三个元素中看到的那样)。然后背景不会缩放到元素的底部。
你能帮助我吗,为什么?我几乎尝试了所有我能想到的东西。
谢谢!
答案 0 :(得分:1)
尝试将其添加到TextView
<TextView
...
android:ellipsize="end"
android:ems="2"
android:maxLines="2" />
这不会让你的textview有两行以上,并在末尾加上省略号。
也许这是一个解决方案。