android 一行有多个textview 当内容过长时 怎么让第一个显示省略号 最后一个全部显示

2024-12-02 05:30:16
推荐回答(5个)
回答1:

TextView中有个ellipsize属性,作用是当文字过长时,该控件该如何显示,解释如下:

  1. android:ellipsize=”start”—–省略号显示在开头

  2. android:ellipsize=”end”——省略号显示在结尾

  3. android:ellipsize=”middle”—-省略号显示在中间

  4. android:ellipsize=”marquee”–以跑马灯的方式显示(动画横向移动)

文字左右滚动三个属性: 

  1. android:singleLine="true" 

  2. android:ellipsize="marquee" 

  3. android:marqueeRepeatLimit="marquee_forever"

回答2:

            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginStart="@dimen/activity_horizontal_margin"
            android:layout_marginEnd="@dimen/activity_horizontal_margin"
            android:layout_marginTop="10dp"
            android:layout_marginBottom="10dp"
            android:gravity="center_vertical"
            android:orientation="horizontal" >

                            android:id="@+id/cabinet_location_text"
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:singleLine="true"
                android:ellipsize="end"
                android:textSize="16sp" />

                            android:id="@+id/packagebox_no_text"
                android:layout_width="60dp"
                android:layout_height="wrap_content"
                android:gravity="center"
                android:paddingStart="3dp"
                android:paddingTop="2dp"
                android:paddingEnd="3dp"
                android:paddingBottom="2dp"
                android:layout_marginLeft="5dip"
                android:background="@drawable/round_orange_bg"
                android:textColor="@android:color/white"
                android:textSize="@dimen/font_medium" />
        


后面的textview固定宽度android:layout_width="60dp",第一个textview设置android:layout_weight="1",android:layout_width="0dp"就能实现效果。

回答3:

实现是可以实现,但是你确定必须第二个textview要显示完整/?

回答4:

这两个textview的内容一样吗?

回答5:

不知道你用的那种布局方式啊