读书人

andriod给ListView中的TextView增多跑

发布时间: 2012-09-09 09:27:54 作者: rapoo

andriod给ListView中的TextView增加跑马灯效果

正常情况下跑马灯效果只需要在TextView中添加android:ellipsize="marquee" android:singleLine="true"

android:focusable="true"属性就可以了,不过这个方法要求指定的TextView必须要获取焦点,而在ListView中这个焦点的获取就变得疑惑了.

解决的方法按照惯例分三步:

1.作为子控件的TextView只添加android:ellipsize="marquee" android:singleLine="true"不添加android:focusable="true"属性

2.在ListView中添加android:focusable="true"属性

3.在代码中为需要显示走马灯效果的那个TextView添加setSelected(true);方法

?

viewHolder.checkInfotable.setOnItemClickListener(new OnItemClickListener() {@Overridepublic void onItemClick(AdapterView<?> arg0, View arg1,int arg2, long arg3) {arg1.setSelected(true);}});

?

?这是我的调用方法;

?

另外跑马灯效果默认是无限循环的,可以通过?android:marqueeRepeatLimit="1"属性来设置循环的次数

读书人网 >编程

热点推荐