Android-TextView-EditText笔记

一.TextView

1.属性XML

<TextView
	...	
	android:ellipsize="marquee"  文本超长时的省略(ellipsis)类型
	android:scrollbars = "vertical" 设置滚动条
	android:maxLines = "AN_INTEGER" 设置最大行数
	android:focusable="true"
	.../>

2.显示内容

TextView.setText(Spannable)
	Html.formHtml(..) 支持部分HTML标记转为Spannable对象
	new SpannableString(..)  支持各种文本样式/图片显示
	new SpannableBuilderString(..) 可变长的SpannableString

3.移动方法

TextView.setMoveMethod(MovementMethod)
	LinkMovementMethod	Html链接跳转
	ArrowKeyMovementMethod 光标移动选择		
	ScrollingMovementMethod	文本内容滚动(配合android:scrollbars使用)

二.EditText 继承自TextView

1.输入表情

SpannableString ss = new SpannableString("表情");
ss.setSpan(new ImageSpan(this,BitmapFactory.decodeResource(getResources(),R.mipmap.ic_launcher)),
                0,2, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
editText.append(ss);

2.输入类型

<EditText
    ...
    android:inputType="textMultiLine|number"
	.../>
	
// 输入错误提示以及图标
editText.setError("错误提示",getResources().getDrawable(R.mipmap.ic_launcher));

3.自动提示输入

<AutoCompleteTextView
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:id="@+id/autoCompleteTextView"/>

<MultiAutoCompleteTextView
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:id="@+id/multiAutoCompleteTextView" />

// 单个输入自动提示
AutoCompleteTextView auto = (AutoCompleteTextView) findViewById(R.id.autoCompleteTextView);
auto.setAdapter(new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,
            new String[]{"Belgium", "France", "Italy", "Germany", "Spain"}));

// 多个输入自动提示
MultiAutoCompleteTextView mulAuto = (MultiAutoCompleteTextView) findViewById(R.id.multiAutoCompleteTextView);
mulAuto.setAdapter(new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,
		new String[]{"Belgium", "France", "Italy", "Germany", "Spain"}));
mulAuto.setTokenizer(new MultiAutoCompleteTextView.CommaTokenizer()); // 逗号分隔多个输入

简书: http://www.jianshu.com/p/0f7a332c99b2
CSDN博客: http://blog.csdn.net/qq_32115439/article/details/56278327
GitHub博客:http://lioil.win/2017/02/17/TextView-EditText.html
Coding博客:http://c.lioil.win/2017/02/17/TextView-EditText.html