textview设置maxline = 10,11行如何更新在屏幕上

时间:2013-11-27 13:27:21

标签: android textview

    sv = (ScrollView) findViewById(R.id.sv);// sv == tv parent view
    tv = (TextView) findViewById(R.id.tv);
    tv.setMaxLines(10);
    for(int i=0;i<10;i++)
    {
        String t1 = "---------------------"+i+"--------------- \n";
        tv.append(t1);
    }
    tv.append("dddddddddddddddddd \n");// 11 line
这是游戏聊天面板,当聊天信息过多时,是否可以删除旧行,如行&gt; 500删除1-200行还是删除1行更新新501行?

2 个答案:

答案 0 :(得分:0)

您可以在textView中添加滚动:

android:scrollbars="vertical"

或者您可以在根据您的代码添加第11行之前删除第一行:

String arr[] = myTextView.getText().toString().split("\n",2);
myTextView.setText(arr[1]);

答案 1 :(得分:0)

请考虑使用带有circular buffer适配器的TextView来有效地限制行数(消息)并实现平滑滚动。

而不是巨大的ListView