android TextView 是最常用的控件
可以用作普通的显示,还可以用作有显示文字的按钮,用作有显示图片的图文组合
1、 图文组合
xml 中:
<TextView
android:id="@+id/txt_back"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_centerVertical="true"
android:paddingLeft="@dimen/margin_padding_ten"
android:paddingRight="@dimen/margin_padding_ten"
android:drawableLeft="@drawable/user_btn_return"
/>
代码中:
// TextView 左侧显示图标
Drawable drawable = getResources().getDrawable(R.drawable.skin_back);
// / 这一步必须要做,否则不会显示.
drawable.setBounds(0, 0, drawable.getMinimumWidth(),drawable.getMinimumHeight());
backTextView.setCompoundDrawables(drawable,null,null,null);
2、RelativeLayout 代码布局居中
android.widget.RelativeLayout.LayoutParams lp = (LayoutParams) view.getLayoutParams();
lp.width = width;
lp.height = height;
lp.addRule(RelativeLayout.CENTER_IN_PARENT, RelativeLayout.TRUE); //居中
view.requestLayout();
3、TextView文字垂直靠左居中,
设置android:gravity="center_vertical|left"。
4、EditTextView 字数限制
最简单的方式,如限制8个字符长度
android:maxLength="8"
其它方式:http://blog.csdn.net/oliver102/article/details/10167637
5、TextView上下空隙与行距
在安卓文档中发现一个TextView属性:
android:includeFontPadding 为上标和下标留出足够的空间,以取代字体上下标.默认为真.
原来是TextView默认留下了上下的padding,是为了显示上标和下标。
于是设置:android:includeFontPadding="false",问题解决
http://www.tuicool.com/articles/7vemI3u
固定行距:android:lineSpacingExtra ="10dp"
1.5倍行距: android:lineSpacingMultiplier="1.5"
6、属性限制字数
android:maxLength="16"
不管是中文还是英文限制的单元都是16个
7、TextView的多行显示
注:有时候TextVIew内容多需要换行显示,用最笨的ScrollView + TextView做的时候随便整就出来了。
后来一次直接纯粹的ScrollView + TextView是不行的,其实是需要ScrollView + LinearLayout + TextView记录下
8、TextView多余出来不显示部分的属性
TextView中有个ellipsize属性,作用是当文字过长时,该控件该如何显示,解释如下:
1.android:ellipsize=”start”—–省略号显示在开头
2.android:ellipsize=”end”——省略号显示在结尾
3.android:ellipsize=”middle”—-省略号显示在中间
4.android:ellipsize=”marquee”–以跑马灯的方式显示(动画横向移动)
和singleline 或者 maxLine配合使用 不然没效果