Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> android 設置字體顏色、EditText自動輸入轉換成大寫字母的多種方式

android 設置字體顏色、EditText自動輸入轉換成大寫字母的多種方式

編輯:關於Android編程

在TextView上面設置某一個字的字體顏色為指定顏色時,可以通過java類SpannableString類和Html語言來實現。

(一)SpannableString類方式

private void setText(TextView t){
		String text = t.getText().toString().trim();
		SpannableString span = new SpannableString(text);
		span.setSpan(new ForegroundColorSpan(Color.RED), 0, 1, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
		t.setText(span);
	}


(二)html標記語言的方式

String html1 = "*姓名:";
		textView.setText(Html.fromHtml(html1));

當輸入小寫字母時,EditText編輯框自動轉換成大寫字母,也有多種方式,即給某個EditText設置監聽、調用EditText對象的setTransformationMethod()方法。

(一)為EditText設置監聽

mEdtLicensePlateNumber.addTextChangedListener(new TextWatcher() {

			@Override
			public void onTextChanged(CharSequence s, int start, int before, int count) {
				// TODO Auto-generated method stub
				mEdtLicensePlateNumber.removeTextChangedListener(this);//解除文字改變事件
				mEdtLicensePlateNumber.setText(s.toString().toUpperCase());//轉換
				mEdtLicensePlateNumber.setSelection(s.toString().length());//重新設置光標位置
				mEdtLicensePlateNumber.addTextChangedListener(this);//重新綁
				licensePlateNumber = mEdtLicensePlateNumber.getText().toString().trim();
			}

			@Override
			public void beforeTextChanged(CharSequence s, int start, int count,
					int after) {
				// TODO Auto-generated method stub

			}

			@Override
			public void afterTextChanged(Editable s) {
				// TODO Auto-generated method stub

			}
		});

(二)調用EditText對象的setTransformationMethod()方法
public class InputLowerToUpper extends ReplacementTransformationMethod{
	@Override
	protected char[] getOriginal() {
		char[] lower = { 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z' };
		return lower;
	}

	@Override
	protected char[] getReplacement() {
		char[] upper = { 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z' };
		return upper;
	}

}

editext.setTransformationMethod(new InputLowerToUpper());


  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved