展会信息港展会大全

完美实现Android ListView中的TextView的跑马灯效果
来源:互联网   发布日期:2015-11-26 10:11:00   浏览:2726次  

导读:Android中的TextView有属性可以直接设置TextView的跑马灯效果这里我不多介绍但这种实现只是在TextView获得焦点的时候才会达到效果如果失去焦点就不太欢乐了那么思路就有了我们重写一个TextView让他......

Android中的TextView有属性可以直接设置TextView的跑马灯效果 这里我不多介绍 但这种实现只是在TextView获得焦点的时候才会达到效果 如果失去焦点 就不太欢乐了

那么 思路就有了 我们重写一个TextView让他一直都获得焦点 是不是就可以实现一直跑动了呢

我们新建一个类Focusedtrue4TV.java,让他继承TextView添加他的构造方法后覆写他父类的方法isFocused();

如下:

public class Focusedtrue4TV extends TextView {

public Focusedtrue4TV(Context context, AttributeSet attrs) {

super(context, attrs);

}

@Override

public boolean isFocused() {

// TODO Auto-generated method stub

return super.isFocused();

}

}

我们可以看到isFocused()方法返回的是调用父类的isFocused();

直接让他返回true就可以实现让TextView永远都是获得焦点的状态进而实现我们想要的的效果

如下:

public class Focusedtrue4TV extends TextView {

public Focusedtrue4TV(Context context, AttributeSet attrs) {

super(context, attrs);

}

@Override

public boolean isFocused() {

// TODO Auto-generated method stub

return true;

}

}

这时 在我们需要用到这个效果的地方添加上这个我们自定义的控件 然后在控件上加上如下两个属性

android:singleLine="true"

android:ellipsize="marquee"

即可 当然此方法在ListView中依然可以应用!

赞助本站

人工智能实验室

相关热词: 跑马 灯效果

AiLab云推荐
展开

热门栏目HotCates

Copyright © 2010-2024 AiLab Team. 人工智能实验室 版权所有    关于我们 | 联系我们 | 广告服务 | 公司动态 | 免责声明 | 隐私条款 | 工作机会 | 展会港