启用滚动浏览textview

时间:2013-01-29 16:58:50

标签: android

我的活动有以下xml。

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context=".Activity1" >

<RelativeLayout
    android:id="@+id/titleStoryRelativeLayout"
    android:layout_weight="@string/titleWeight"
    android:layout_width="fill_parent"
    android:layout_height="0dip">
    <TextView
        android:id="@+id/titleStory"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"/>
</RelativeLayout>
<RelativeLayout
    android:id="@+id/contentTextViewLayout"
    android:layout_weight="@string/contentTextViewWeight"
    android:layout_width="fill_parent"
    android:layout_height="0dip">
    <TextView
        android:id="@+id/textViewStory1"
        android:layout_width="fill_parent"
              android:layout_height="wrap_content"/>
</RelativeLayout>
<RelativeLayout
    android:id="@+id/footerStoryRelativeLayout"
    android:layout_weight="@string/footerWeight"
    android:layout_width="fill_parent"
    android:layout_height="0dip>

    <Button
        android:id="@+id/buttonPrevious"
        style="?android:attr/buttonStyleSmall"
        android:layout_width="wrap_content"
        android:layout_height="fill_parent"
        android:layout_alignParentLeft="true"
        android:onClick="loadPrevious"
        android:text="@string/stringButtonPrevious"/>

    <Button
        android:id="@+id/buttonNext"
        style="?android:attr/buttonStyleSmall"
        android:layout_width="wrap_content"
        android:layout_height="fill_parent"
        android:layout_alignParentRight="true"
        android:onClick="loadNext"
        android:text="@string/stringButtonNext"/>

这里我从我的代码中动态加载我的Textview(@ + id / textViewStory1)和一些文本。问题是在加载过程中,很少有线超出屏幕。我打算启用滚动功能,以便用户可以向下滚动查看缺少的行。但滚动应该只限制到最后一行而不是超出。关于如何设置的任何建议?

3 个答案:

答案 0 :(得分:1)

为textview设置以下设置:

android:maxLines = "AN_INTEGER"

android:scrollbars = "vertical"

然后,您可以在java中将其设置为可滚动:

TextView.setMovementMethod(new ScrollingMovementMethod());

答案 1 :(得分:0)

尝试使用ScrollView(官方文档)

答案 2 :(得分:0)

您可以将TextView的高度限制为与要查看的行数相匹配,然后将TextView放入ScrollView

我做了一个简单的例子来证明这一点......

<ScrollView android:layout_height="30dp"
        android:layout_width="match_parent">
<TextView 
    android:layout_width="match_parent"
    android:layout_height="30dp"
    android:textSize="16sp"
    android:id="@+id/tv1"
    />
</ScrollView>

观察我如何修复ScrollView的高度并将TextView的高度与其匹配。

我在here之前回答了这个问题,请在再次询问之前检查SO上的现有答案。