经常看到马上旁边的商店招牌上有跑马灯效果的广告,如何在安卓中使用TextView控件实现这样的效果呢,把实现方法给大家分享。
使用TextView实现跑马灯效果,需要设置ellipsize、singleLine、focusable、focusableInTouchMode、marqueeRepeatLimit这几个属性。
activity_main.xml文件:
<!-- ellipsize是设置动作,marqueeRepeatLimit设置重复,focusable表示有聚焦的功能 -->
<TextView
android:id="@+id/textview"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:ellipsize="marquee"
android:singleLine="true"
android:background="#FFFFFF"
android:textColor="#000"
android:textSize="20dp"
android:layout_margin="10dp"
android:padding="10dp"
android:focusable="true"
android:focusableInTouchMode="true"
android:marqueeRepeatLimit="marquee_forever"
/>
MainActivity.java文件:
private TextView textview1;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
textview1=(TextView)findViewById(R.id.textview);
String html=" A股今日午后直线拉升,沪指暴涨近5%,涨停潮再现。截至收盘,<a href='http://www.baidu.com'>沪指</a>上涨4.89%报3152.26点。深成指暴涨6.45%报9890.43点,创业板指飙升7.16%报1926.25点。公共交通、互联网、软件等板块表现抢眼。";
CharSequence charSequence=Html.fromHtml(html);
textview1.setText(charSequence);
textview1.setMovementMethod(LinkMovementMethod.getInstance());
}