首页 > 代码库 > [androidUI特效]android中TextView中如何设置水平滚动效果

[androidUI特效]android中TextView中如何设置水平滚动效果

    如何让文本实现走马灯的效果,下面就一起实现下吧~~~~~~

package irdc.ScrollingText;import android.app.Activity;import android.os.Bundle;import android.widget.TextView;public class ScrollingText extends Activity{  public TextView t1;  /** Called when the activity is first created. */  @Override  public void onCreate(Bundle savedInstanceState)  {    super.onCreate(savedInstanceState);    setContentView(R.layout.main);    t1= (TextView) findViewById(R.id.t1);    t1.setText("哈哈我的跑马灯程序接下来是歌词呵呵:沉鱼落雁,闭月羞花,美的无处藏,人在身旁,如沐春光");    t1.setTextSize(30);    t1.setHorizontallyScrolling(true);    t1.setFocusable(true);  }}

   在这段程序中我设置了t1的焦点为真(意思为焦点在t1上),同事我设置了t1的文本显示能超过其显示区域(t1.setHorizontallyScrolling(true) 设置的这行的目的是为了不让程序自动给文本折行,使之为单行),当然这些属性你都可以在XML文件中定义。接下来我们看看main.xml文件。

<?xml version="1.0" encoding="utf-8"?><AbsoluteLayoutandroid:id="@+id/widget35"android:layout_width="fill_parent"android:layout_height="fill_parent"android:background="@drawable/black"xmlns:android="http://schemas.android.com/apk/res/android"><TextViewandroid:id="@+id/t1"android:layout_width="100px"//此处为文本显示区域的宽度此值必须比你的文本宽度要小否则是没有效果的android:layout_height="wrap_content"android:text="@string/str_id"android:textColor="@drawable/green"android:layout_x="61px"android:layout_y="69px"android:scrollX="2px"android:singleLine="true"android:ellipsize="marquee"android:marqueeRepeatLimit="marquee_forever"></TextView><ViewStub android:layout_y="221dip" android:layout_;wrap_content" android:layout_x="103dip" android:id="@+id/ViewStub01" android:layout_height="wrap_content"></ViewStub></AbsoluteLayout>
大家注意到在TextView中我添加了三行蓝色的字段,其中singleLine表示TextView中文本为单行文本如果你在你的程序中设置了setHorizontallyScrolling(true)在这你可以不写了,接下来就是我们的关键之处了ellipsize="marquee" 此语句表示我们将TextView设置为了一个走马灯,marqueeRepeatLimit="marquee_forever"  表示走马灯的滚动效果重复的次数,你可以填一个自然数。
好了接下了编译试试
转载自:http://www.lupaworld.com/home/space-345712-do-blog-id-138560.html

[androidUI特效]android中TextView中如何设置水平滚动效果