Android实现多个跑马灯效果,多个文本框TextView的跑马灯
2012-05-11 20:08
776 查看
Android实现多个跑马灯效果,多个文本框TextView的跑马灯
一、新建一个Marquee类继承TextView
由于默认的跑马灯效果是需要TextView的方法isFocused为true的时候才会跑动的,而默认时,只有一个TextView处于focused状态,解决办法就是让所有要实现跑马灯效果的TextView都处于focused状态,因此要改写TextView类。于是新建一个Marquee类:
二、布局文件:
三、调用布局文件显示:
一、新建一个Marquee类继承TextView
由于默认的跑马灯效果是需要TextView的方法isFocused为true的时候才会跑动的,而默认时,只有一个TextView处于focused状态,解决办法就是让所有要实现跑马灯效果的TextView都处于focused状态,因此要改写TextView类。于是新建一个Marquee类:
package org.shuxiang.test; import android.content.Context; import android.graphics.Rect; import android.util.AttributeSet; import android.widget.TextView; public class Marquee extends TextView { public Marquee(Context context, AttributeSet attrs) { super(context, attrs); } @Override protected void onFocusChanged(boolean focused, int direction, Rect previouslyFocusedRect) { // TODO Auto-generated method stub if(focused) super.onFocusChanged(focused, direction, previouslyFocusedRect); } @Override public void onWindowFocusChanged(boolean hasWindowFocus) { // TODO Auto-generated method stub if(hasWindowFocus) super.onWindowFocusChanged(hasWindowFocus); } @Override public boolean isFocused() { return true; } }
二、布局文件:
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:background="#ffffff" android:orientation="vertical" > <LinearLayout android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="wrap_content"> <org.shuxiang.test.Marquee android:id="@+id/pmd1" android:layout_width="200dip" android:layout_height="wrap_content" android:layout_marginLeft="10dip" android:layout_marginRight="10dip" android:clickable="true" android:ellipsize="marquee" android:focusable="false" android:focusableInTouchMode="true" android:marqueeRepeatLimit="marquee_forever" android:scrollHorizontally="true" android:text="跑马灯文字1跑马灯文字1跑马灯文字1跑马灯文字1" /> <org.shuxiang.test.Marquee android:id="@+id/pmd2" android:layout_width="200dip" android:layout_height="wrap_content" android:layout_marginLeft="10dip" android:layout_marginRight="10dip" android:clickable="true" android:ellipsize="marquee" android:focusable="true" android:focusableInTouchMode="true" android:marqueeRepeatLimit="marquee_forever" android:scrollHorizontally="true" android:text="这里是第2个跑马灯噢!这里是第2个跑马灯噢!这里是第2个跑马灯噢!" /> <org.shuxiang.test.Marquee android:id="@+id/pmd3" android:layout_width="200dip" android:layout_height="wrap_content" android:layout_marginLeft="10dip" android:layout_marginRight="10dip" android:clickable="true" android:ellipsize="marquee" android:focusable="true" android:focusableInTouchMode="true" android:marqueeRepeatLimit="marquee_forever" android:scrollHorizontally="true" android:text="》》》第3个跑马灯》》》第3个跑马灯》》》第3个跑马灯" /> </LinearLayout> </LinearLayout>
三、调用布局文件显示:
package org.shuxiang.test; import android.app.*; import android.os.*; public class MainActivity extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); } }
相关文章推荐
- Android实现多个跑马灯效果,多个文本框TextView的跑马灯
- Android基于TextView实现跑马灯效果
- android TextView实现跑马灯效果
- Android中TextView控件的跑马灯效果实现
- android textView实现跑马灯效果
- Android中使用TextView实现文字跑马灯效果
- Android——TextView实现跑马灯效果
- Android基于TextView实现的跑马灯效果实例
- Android开发 TextView实现跑马灯效果
- Android实现跑马灯效果的TextView
- Android TextView实现可暂停的跑马灯效果
- android TextView实现跑马灯效果
- android使用TextView实现文字的跑马灯效果
- Android拓展TextView 实现跑马灯效果
- Android中长TextView实现跑马灯效果
- Android TextView实现跑马灯效果
- Android实现多个TextView同时显示跑马灯效果
- Android TextView实现跑马灯效果的两种方式
- Android开发 第三课 使用TextView实现跑马灯效果
- android用TextView实现跑马灯效果