TextView属性解析

android:singleLine="true"

设置单行显示。如果和layout_width一起使用,当文本

不能全部显示时,后面用“…”来表示。如
android:text="test_ singleLine "
android:singleLine="true"
android:layout_width="20dp"将只显示“t… ”。如果

不设置singleLine或者设置为false,文本将自动换行

android:ellipsize="none"

1,ellipsize等于marquee,跑马灯效果

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:background="#EEEEEE" >

        <TextView 
            android:id="@+id/textview" 
            android:layout_width="200dp" 
            android:layout_height="wrap_content" 
            android:layout_centerInParent="true" 
            android:background="#EEEE00" 
            android:ellipsize="marquee" 
            android:focusable="true" 
            android:focusableInTouchMode="true" 
            android:marqueeRepeatLimit="marquee_forever" 
            android:scrollHorizontally="true" 
            android:singleLine="true" 
            android:text="@string/hello_world" 
            android:textSize="15dp" 
            android:textColor="#FF0000" />

</RelativeLayout>

运行效果是:

从右向左循环滚动。

2,ellipsize等于end

<TextView 
    android:id="@+id/textview" 
    android:layout_width="200dp" 
    android:layout_height="wrap_content" 
    android:layout_centerInParent="true" 
    android:background="#EEEE00" 
    android:ellipsize="end" 
    android:singleLine="true" 
    android:text="@string/hello_world" 
    android:textSize="15dp" 
    android:textColor="#FF0000" /> 

运行屏幕截图:

)N)~WB79%DH}J3``}3K{%$H

3,ellipsize等于start

<TextView 
    android:id="@+id/textview" 
    android:layout_width="200dp" 
    android:layout_height="wrap_content" 
    android:layout_centerInParent="true" 
    android:background="#EEEE00" 
    android:ellipsize="start" 
    android:singleLine="true" 
    android:text="@string/hello_world" 
    android:textSize="15dp" 
    android:textColor="#FF0000" />

运行屏幕截图:

PF{5Q%3W(6`Y$VDP8W%$0LW

4,ellipsize等于middle

<TextView 
    android:id="@+id/textview" 
    android:layout_width="200dp" 
    android:layout_height="wrap_content" 
    android:layout_centerInParent="true" 
    android:background="#EEEE00" 
    android:ellipsize="middle" 
    android:singleLine="true" 
    android:text="@string/hello_world" 
    android:textSize="15dp" 
    android:textColor="#FF0000" /> 

运行屏幕截图:

W6){B@45BQ{O(_0A0{4XI3V

5,ellipsize等于none

<TextView 
android:id="@+id/textview" 
android:layout_width="200dp" 
android:layout_height="wrap_content" 
android:layout_centerInParent="true" 
android:background="#EEEE00" 
android:ellipsize="none" 
android:singleLine="true" 
android:text="@string/hello_world" 
android:textSize="15dp" 
android:textColor="#FF0000" /> 

运行屏幕截图:

RKA7E7Z[~PMOXMTZFG(MK)G

6,上述5种用法在代码中设置也可以达到效果

textView.setEllipsize(TruncateAt.MARQUEE);

textView.setEllipsize(TruncateAt.END);

textView.setEllipsize(TruncateAt.START);

textView.setEllipsize(TruncateAt.MIDDLE);

或者,

tv.setEllipsize(TruncateAt.valueOf("END"));

tv.setEllipsize(TruncateAt.valueOf("START"));

tv.setEllipsize(TruncateAt.valueOf("MIDDLE"));

tv.setEllipsize(TruncateAt.valueOf("MARQUEE"));

android:textStyle="bold"

TextView在xml中可以定义Android:textStyle="bold"来使字体显示为粗体,但是这只对英文有效,当你的TextView要显示中文的时候要在code中设置粗体的paint来实现,如下:

1 TextView title =  new TextView(context); // 或从xml导入
2  TextPaint paint = title.getPaint();
3 paint.setFakeBoldText( true); 

这样就可以显示粗体了。

android:shadowDx="0"
android:shadowDy="-1"

android:shadowColor :阴影颜色

android:shadowDx :阴影x方向位移

android:shadowDy :阴影y方向位移

android:shadowRadius :阴影的半径

注意:阴影的半径必须设,为0时没有效果。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值