话说android --- 电话本号码的跑马灯效果失效

  看完XML文件发现,跑马灯的效果已经实现了啊,

android:Ellipsize = "marquee"

android:marqueeRepeatLimit = "marquee_forever"

android:singleLine = "true"

怎么会没有效果呢??? 后来发现是需要显示的View没有获得焦点导致的问题,怎么样在没有获得焦点的情况下实现跑马灯效果呢最简单也是网上最常见的方法就是重写一个类继承自TextView,代码如下:

public class MyDefinedText extends TextView {
public MyDefinedText (Context context ) {
  super(context );
}

public MyDefinedText (Context context, AttributeSet attrs) {
  super(context, attrs);
}
public MyDefinedText (Context context, AttributeSet attrs, int defStyle) {
  super(context, attrs, defStyle);
}
@Override//为了获得焦点
public boolean isFocused() {
return true;
}
@Override//可以自己比较一下效果,自己动手收获多多~~
protected void onFocusChanged(boolean focused, int direction,
   Rect previouslyFocusedRect) {  
}
}

最后一步,修改XML文件中的相应地方代码即可(Dialer_contacts_item.xml (apps\contacts\res\layout) )--- 需要设置跑马灯效果的地方

如果还是没有效果,还需要看看实际代码中是否还设置了其他的属性:比如最大行...等等。

 

希望能对你有点点帮助。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值