如何将滚动条添加到android中的textview

时间:2015-02-07 05:04:15

标签: java android

我已经定义了函数showMeTable(),用于从DbHelper.java类中的sqlite数据库中获取数据。然后我从WeekDbShow.java类中调用它。在以字符串的形式获取表之后,我将其设置为textView。这是我的DbHelper.java类的一部分。

public String showMeTable()
    {
        String mStr="";

        mStr=mStr.concat("<body >");
        mStr=mStr.concat("<tr><td align='center'><b>period</b></td><td align='center'><b>Monday</b></td>" +
                "<td align='center'><b>Tuesday</b></td><td align='center'><b>Wednesday</b></td><td align='center'><b>Thrusday</b></td>" +
                "<td align='center'><b>Friday</b></td></tr>");

        String[] columns=new String[]{KEY_ROWID,KEY_PERIOD,KEY_MON,KEY_TUES,KEY_WED,KEY_THRUS,KEY_FRI};//KEY_MON may be instead of weekDay
        Cursor cursor=OurDb.query(DATABASE_TABLE,columns,null,null,null,null,null);
        cursor.moveToFirst();
        while(!cursor.isAfterLast())
                    {
        mStr=mStr.concat("<tr><td>"+(cursor.getString(cursor.getColumnIndex(KEY_PERIOD)))+"</td>" +
                "<td>"+(cursor.getString(cursor.getColumnIndex(KEY_MON)))+"</td><td>"+
                (cursor.getString(cursor.getColumnIndex(KEY_TUES)))+"</td><td>"+(cursor.getString(cursor.getColumnIndex(KEY_WED)))+"</td>" +
                "<td>"+(cursor.getString(cursor.getColumnIndex(KEY_THRUS)))+"</td><td>"+(cursor.getString(cursor.getColumnIndex(KEY_FRI)))+"</td></tr>");


          cursor.moveToNext();
        }

           mStr.concat("</table></body>");
           return mStr;
    }

这是我调用showMeTable的WeekDbShow.java类的一部分。

 String data=myDbHelper.showMeTable();

    //showMe.setText("<b>data</b>");
    showMe.setText(Html.fromHtml(data));
    myDbHelper.close();

这是我的xml文件。

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout android:id="@+id/LinearLayout01"
android:layout_width="fill_parent" 
android:layout_height="fill_parent"
android:orientation="vertical" 
xmlns:android="http://schemas.android.com/apk/res/android">    
<TextView
    android:id="@+id/tvTT"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:text="Medium Text"
    android:maxLines = "200"
    android:scrollbars = "vertical"
    />

请给我一些很好的解决方案,我已经准备好在xml中尝试了scrollView。

4 个答案:

答案 0 :(得分:3)

在布局的xml文件集中TextView的属性中:

android:scrollbars = "vertical"

答案 1 :(得分:2)

尝试在布局xml中的文本视图属性中添加scrollable = true和scrollbar = vertical。

答案 2 :(得分:2)

如果您使用AS,那么上面的修复可能无法正常工作....试试这个...... 在布局的xml文件集中的TextView属性中:

android:scrollbars = "vertical"

答案 3 :(得分:0)

您也可以通过添加以下行来以编程方式(.class)执行此操作

yourtextView.setVerticalScrollBarEnabled(true);
yourtextView.setMovementMethod(new ScrollingMovementMethod());

有关详细信息,请参阅此link