Android TextView

本文介绍如何使用TextView实现跑马灯效果而无需获取焦点,并解决显示问题;调整行间距及字间距的方法;设置TextView文本最多显示指定字符数后显示省略号;以及如何为TextView设置下划线并响应点击事件。
1、TextView不用获取焦点也能实现跑马灯

public class MarqueeTextView extends TextView {

@Override  

    protected void onFocusChanged(boolean focused, int direction, Rect previouslyFocusedRect) {  

        if(focused)  

            super.onFocusChanged(focused, direction, previouslyFocusedRect);  

    }  

    @Override  

    public void onWindowFocusChanged(boolean focused) {  

        if(focused)  

            super.onWindowFocusChanged(focused);  

    }  

    @Override  

    public boolean isFocused() {  

        return true;  

    }  

}

           android:singleLine="true"

            android:focusable="true"

            android:focusableInTouchMode="true"

            android:ellipsize="marquee"

            android:scrollHorizontally="true"

            android:marqueeRepeatLimit="marquee_forever"

这里解决了:1、下拉状态栏到半截不松开时和失去焦点时显示"......"的问题

                     2、失去焦点不滚动问题。


原文地址:http://blog.youkuaiyun.com/wangjia55/article/details/7867437 

2、上下行间距:

android:lineSpacingExtra="3dp"  //设置行间距

android:lineSpacingMultiplier="1.2"  // 设置行间距的倍数,如”1.2″。

左右字间距:

android:scaleX="3"

3、设置TextView下划线并响应点击事件(SpannableString)

http://blog.youkuaiyun.com/herbert5069/article/details/24587085 

http://aichixihongshi.iteye.com/blog/1207503  (很全面)

4、TextView设置最多显示8个字符,超过部分显示...(省略号)

 <TextView

            android:layout_width="wrap_content"

            android:layout_height="wrap_content"

            android:text="安德的游戏安德的游戏安德的游戏"

            android:ellipsize="end"

            android:singleLine="true"

            android:maxEms="8"/>

如果加上android:paddingLeft="20dp",此时所限制的8个字符会出现问题。

转载于:https://my.oschina.net/u/1389206/blog/372612

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值