android TextView会在文本足够长时将其截断

bvhaajcl  于 2023-01-19  发布在  Android
关注(0)|答案(8)|浏览(210)

我有一个奇怪的问题与文本视图,它切断了部分文本在年底。我的布局看起来像

<LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:layout_gravity="top|center_horizontal"
        android:gravity="top|center_horizontal"
        android:orientation="vertical" >
        <LinearLayout
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:layout_gravity="top|center_horizontal"
            android:gravity="top|center_horizontal"
            android:orientation="horizontal"
            android:layout_weight="1"
            android:layout_marginBottom="5dp">
            <Button
                android:id="@+id/btnPreviousQuestion"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:background="@drawable/selector_arrow_left"
                android:clickable="true"
                android:visibility="gone" >
            </Button>
            <TextView
                android:id="@+id/txtQuestion"
                style="@style/question_text"
                android:layout_width="fill_parent"
                android:layout_height="fill_parent"
                android:gravity="top|center_horizontal"
                android:layout_weight="1"
                 />
            <Button
                android:id="@+id/btnNextQuestion"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginRight="10dp"
                android:background="@drawable/selector_arrow_right"
                android:clickable="true" >
            </Button>
        </LinearLayout>
        <LinearLayout
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_gravity="center_horizontal"
            android:layout_weight="1"
            android:orientation="horizontal" >
            <WebView
                android:id="@+id/wvMultimediaQuestion"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="bottom|center_horizontal"
                android:layout_marginLeft="50dp"
                android:layout_marginRight="55dp"
                android:layout_weight="1"
                android:visibility="gone" />
        </LinearLayout>
    </LinearLayout>

txtquestion会在文本足够长的时候切断它。出了什么问题,有人知道吗?

5vf7fwbs

5vf7fwbs1#

利用这些属性

android:lines="1"
    android:scrollHorizontally="true"
    android:ellipsize="end"

将在末尾附加“...”。但这不会解决Hive选项卡中的问题
因此,对于Hive片,还应添加以下属性

android:singleLine="true"

另一方面,如果你需要字幕效果

android:singleLine="true"
android:ellipsize="marquee" 
android:marqueeRepeatLimit="marquee_forever"
android:scrollHorizontally="true" 
android:focusable="true" 
android:focusableInTouchMode="true
4ktjp1zp

4ktjp1zp2#

是的,你需要设置一些属性,但是首先让我们知道你想要哪种类型的文本视图,单行还是多行?
您可以注意以下一些属性:

android:singleLine="true"  // or false
android:ellipsize="marquee"   // must check
android:lines="1"
f8rj6qna

f8rj6qna3#

在布局文件中设置以下属性。它对我来说很好用

android:singleLine="true"
android:ellipsize="marquee"
android:marqueeRepeatLimit="marquee_forever"
android:focusableInTouchMode="true"
yfwxisqw

yfwxisqw4#

如果你希望你的视图有不同长度的文本,或者你打算改变你的TextView的不同示例的textSize,那么你应该使用View.addOnLayoutChangeListener()
请看下面的例子:https://stackoverflow.com/a/44069734/1402087

dgenwo3n

dgenwo3n5#

在要填充的TextView上设置layout_gravity

cnwbcb6i

cnwbcb6i6#

您需要设置android:minLines=“2”

disho6za

disho6za7#

对我来说,我意识到我使用的是一个不同的设备的布局视图,我正在测试的一个。当我纠正这一点,我可以看到文本布局是太宽了,所以我用这个设置来控制它:

android:layout_width="330dp"
yzuktlbb

yzuktlbb8#

尝试了这里提供的所有解决方案,但没有一个有帮助,最后得到了在textview中使用android:layout_width="0dp"而不是android:layout_width="fill_parent"的解决方案。

相关问题