我对TextView有一个奇怪的问题,它最后切断了部分文本。我的布局看起来像
<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在文本足够长时切断文本。有什么不对,有人知道吗?
答案 0 :(得分:52)
利用这些属性
android:lines="1"
android:scrollHorizontally="true"
android:ellipsize="end"
最后会追加“......”。但这不会解决蜂窝标签中的问题
因此,对于蜂窝片,还要添加以下内容
android:singleLine="true"
另一方面,如果你需要选框效果
android:singleLine="true"
android:ellipsize="marquee"
android:marqueeRepeatLimit="marquee_forever"
android:scrollHorizontally="true"
android:focusable="true"
android:focusableInTouchMode="true
答案 1 :(得分:5)
是的,你需要设置一些属性,但首先让我们知道你想要什么类型的textview,单行还是多行?
您可以使用以下属性:
android:singleLine="true" // or false
android:ellipsize="marquee" // must check
android:lines="1"
答案 2 :(得分:0)
你需要设置 机器人:的minlines = “2”
答案 3 :(得分:0)
如果您希望视图的文字长度不同,或者您要更改textSize
的不同实例的TextView
,那么您应该使用View.addOnLayoutChangeListener()
。
答案 4 :(得分:0)
在布局文件中设置以下属性。对我来说很好
android:singleLine="true"
android:ellipsize="marquee"
android:marqueeRepeatLimit="marquee_forever"
android:focusableInTouchMode="true"
答案 5 :(得分:0)
对我来说,我意识到我正在使用与我正在测试的设备不同的设备的布局视图。当我更正这个时,我可以看到 textlayout 太宽了,所以我用这个设置来控制它:
android:layout_width="330dp"