android TextView EditText部分技巧使用

2017-05-18  本文已影响123人  用一辈子等待一个幸福

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配合使用 不然没效果

9、EditText显示输入框而不是一条直线
亮白色android:background="@android:drawable/alert_light_frame"
黑色android:background="@android:drawable/alert_dark_frame"

上一篇下一篇

猜你喜欢

热点阅读