当文本超出TextView大小时,如何让TextView自动垂直滚动?

时间:2014-02-28 12:37:15

标签: android scroll textview marquee

我正在尝试在播放视频时自动滚动文本视图。我的文字太长,不适合屏幕,我想在活动开始时自动滚动它。我按照堆栈溢出的方式发布了每个教程或提示,但我无法理解。

这是我的班级文件:

public class TextSrcollActivity extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_text_srcoll);

    TextView tv=(TextView)findViewById(R.id.textView1);
    tv.setMovementMethod(new ScrollingMovementMethod());
    tv.setSelected(true);
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.text_srcoll, menu);
    return true;
}
}

这是我的XML文件:

<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_marginRight="3dp"
android:layout_marginTop="3dp"
android:background="#ff737373"
android:gravity="center"
android:minWidth="64dp"
android:orientation="vertical"
android:padding="3dp" >
<TextView
    android:id="@+id/textView1"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:ellipsize="marquee"
    android:focusable="true"
    android:focusableInTouchMode="true"
    android:marqueeRepeatLimit="marquee_forever"
    android:maxWidth="100px"
    android:scrollHorizontally="false"
    android:scrollbars="vertical"
    android:gravity="bottom"
    android:singleLine="false"
    android:textColor="#ffd9d9d9"
    android:textSize="16sp"/>
</LinearLayout>

在XML文件中,我试图更改一些属性,但我仍然没有。

2 个答案:

答案 0 :(得分:0)

在scrollview中使用textview ..

<ScrollView   
android:id="@+id/ScrollView01"  
android:layout_height="fill_parent"   
android:layout_width="fill_parent">

<TextView
android:id="@+id/textView1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ellipsize="marquee"
android:focusable="true"
android:focusableInTouchMode="true"
android:marqueeRepeatLimit="marquee_forever"
android:maxWidth="100px"
android:scrollHorizontally="false"
android:scrollbars="vertical"
android:gravity="bottom"
android:singleLine="false"
android:textColor="#ffd9d9d9"
android:textSize="16sp"/>

</ScrollView>

答案 1 :(得分:0)

对多行文字视图进行ellipsize存在问题。这是一个旧问题,其中包含错误报告:http://code.google.com/p/android/issues/detail?id=2254

错误报告底部有一个解决方法,另一个就在SO上:android ellipsize multiline textview