• android 设置字体颜色、EditText自己主动输入转换成大写字母的多种方式


    在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 = "<html><body><a><font color="#ff0000">*</a>姓名:</body></html>";
    		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());
    


  • 相关阅读:
    HDU 5937 Equation(DFS+剪枝)
    HDU 5733 tetrahedron(计算几何)
    BZOJ2243 [SDOI2011]染色(树链剖分+线段树合并)
    计蒜客 微软大楼设计方案(RMQ)
    Codeforces 804D Expected diameter of a tree(树的直径 + 二分 + map查询)
    Codechef Black Nodes in Subgraphs(树型背包)
    2017年暑假集训前的反省
    Codeforces 599E Sandy and Nuts(状压DP)
    Codeforces 570D Tree Requests(树上启发式合并)
    搭建MHA
  • 原文地址:https://www.cnblogs.com/blfshiye/p/4295314.html
Copyright © 2020-2023  润新知