android编辑文本修剪设备上的冗长文本,但不在模拟器中修剪

时间:2012-03-07 01:39:03

标签: android textview android-edittext

文本本身使用以下行设置:

mtxtComment=(TextView) findViewById(R.id.textComment);
mtxtComment.setText(Html.fromHtml(strTextComment), TextView.BufferType.SPANNABLE);

mtxtComment是一个可编辑的TextView(EditText)。布局很常见:

    <EditText
        android:id="@+id/textComment"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content" 
        android:textSize="17dip"
        android:paddingLeft="10px"
        android:paddingRight="6px"
         android:scrollbars="vertical"
         android:editable = "false"
         android:textColor = "@android:color/white">

文本长度约为77kb,其中约1/3实际显示在屏幕上。 模拟器显示了一切。 短于20kb的文本在设备上显示正常。

第一个截图 - 在设备上,这是文本的最底层: First screenshot - on device, this is the very bottom of the text http://i40.tinypic.com/1zd0kt2.png

第二个截图 - 模拟器 - 这不是底部,可以滚动到底部: second screenshot - emulator - this is not the bottom, it is possible to scroll further to the bottom http://i41.tinypic.com/25ez2bk.png

有关正在发生的事情及其修复方法的任何想法? 或者,如果您不知道确切的答案,但可以指出我正确的方向,请回复。

1 个答案:

答案 0 :(得分:0)

最后我找到了解决方案:

我在布局XML中添加了以下属性:

<强>机器人:最大长度=&#34; 300000&#34;

可能默认情况下由于某种原因它被设置为9000,因为我的冗长文本被削减了那个大小。 在代码的以下片段中, txtComm 对象具有全长的mText属性,但是WordtoSpan的mText限制为9000:

        Spannable txtComm=(Spannable) Html.fromHtml(strTextComment);

        mtxtComment.setText(txtComm, TextView.BufferType.SPANNABLE);
        Spannable WordtoSpan = (Spannable) mtxtComment.getText();