如果到达视图边界,则将textview移动到下一行

时间:2015-10-21 06:19:50

标签: android android-xml

我在linearlayout中包含以下布局:

<LinearLayout
                            android:layout_width="match_parent"
                            android:layout_height="0dp"
                            android:layout_weight="1"
                            android:gravity="center_vertical"
                            android:orientation="horizontal">

                            <Lato_TextView
                                android:id="@+id/person_name"
                                android:layout_width="wrap_content"
                                android:layout_height="wrap_content"
                                android:maxLines="2"
                                android:text="Aadil Holy"
                                android:textColor="#000000"
                                android:textSize="16sp"
                                exaprojects:fontName="Lato-Regular.ttf" />

                            <Lato_TextView
                                android:id="@+id/textView2"
                                android:layout_width="wrap_content"
                                android:layout_height="wrap_content"
                                android:layout_marginLeft="05dp"
                                android:layout_marginStart="05dp"
                                android:gravity="start|center"
                                android:text="(#884)"
                                android:textSize="14sp"
                                exaprojects:fontName="Lato-LightItalic.ttf" />
                        </LinearLayout>

视图在cardview内部以水平对齐方式放置,这里的问题是如果person_name中的文本太长,textView2中的文本会被剪切并垂直显示,这会运行此布局。怎么克服这个?

enter image description here

2 个答案:

答案 0 :(得分:0)

第一种方法:

android:ems or setEms(n)

“使TextView正好是这么多ems”

注意:但仅当layout_width设置为“wrap_content”时。其他layout_width值覆盖ems宽度设置。

你也可以试试这个:

android:singleLine="false"

答案 1 :(得分:0)

请尝试使用RelativeLayout。例如:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="match_parent">
    <TextView
        android:id="@+id/person_name"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:maxLines="2"
        android:text="Aadil Holy"
        android:textColor="#000000"
        android:textSize="16sp"
        android:layout_toLeftOf="@+id/textView2"/>

    <TextView
        android:id="@+id/textView2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginLeft="05dp"
        android:layout_marginStart="05dp"
        android:gravity="start|center"
        android:text="(#884)"
        android:textSize="14sp"
        android:layout_alignParentRight="true" />