下面是我的布局大纲。我将ScrollView放在另一个LinearLayout中,因为我会在运行时向它添加更多视图。
无论如何,问题是 - TextView中的文本总是被截断为单行,并且永远不会以多行显示。
有没有办法让它显示多线TextViw而不必使用android:lines或android:maxLines设置任意数量的行?
感谢。
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent" android:layout_height="fill_parent"
android:orientation="vertical" android:background="@drawable/background"
android:id="@+id/XyzLayout"
android:paddingRight="10dp">
<ScrollView android:layout_width="fill_parent"
android:layout_height="fill_parent" android:background="@drawable/background"
android:fillViewport="true">
<LinearLayout android:layout_width="fill_parent"
android:layout_height="wrap_content" android:orientation="vertical"
android:layout_marginBottom="0dip" android:layout_marginTop="1dip">
<TextView android:id="@+id/textView1"
android:text="@string/String1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="10dip"
android:layout_marginTop="20dip"
android:layout_marginRight="10dip" android:textSize="18dip"
android:typeface="sans" android:textStyle="bold"
android:layout_marginBottom="4dip"
android:inputType="text|textMultiLine"/>
<TextView android:id="@+id/textView2"
android:text="@string/String2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="10dip"
android:layout_marginTop="20dip"
android:layout_marginRight="10dip" android:textSize="16sp"
android:typeface="sans" android:textStyle="bold"
android:layout_marginBottom="4dip"
android:inputType="text|textMultiLine"/>
</LinearLayout>
</ScrollView>
</LinearLayout>
答案 0 :(得分:2)
我遇到了带有CM7(2.3.7)的i5800和仿真器的问题,并且在带有CM9(4.0.3)的SGS-i9000上工作正常。
问题是在清单上设置主题:
<application
android:icon="@drawable/icon"
android:label="@string/app_name"
android:theme="@android:style/Theme.DeviceDefault" >
我把“android:theme =”@ android:style / Theme.Holo“,如果设备没有,那么textview不允许使用MultiLine。
您可以使用“holoeverywhere”库将holo主题移植到所有设备。
问候。
答案 1 :(得分:1)
尝试删除设置android:inputType="text"
。
刚遇到同样的问题。我有android:multiLines="2"
,然后我尝试android:lines="2"
,然后尝试添加android:singleLine="false"
,但我的 EditText 只会显示一行。我可以水平滚动到达我的行尾。最终工作的是删除设置android:inputType="text"
。这允许我输入一条长线,它将换行到第二行。
答案 2 :(得分:0)
默认情况下可能是假的,但您是否尝试在TextView
中添加此内容 android:singleLine="false"
-serkan
答案 3 :(得分:0)
添加到@ KNU的答案......
这是一个很好的相关答案,表明您可以根据其运行的Android 版本使用不同的主题 - 只需创建一个版本化的样式文件夹。
答案 4 :(得分:0)
将输入类型设置为inputType =“ text | textMultiLine”。这样可以解决我的问题。
<TextView
android:id="@+id/itemTitle"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="text|textMultiLine"
android:textSize="@dimen/text_size_12"
android:layout_gravity="center"
android:gravity="center"
android:text="Your Text Here"/>