软件编程
位置:首页>> 软件编程>> Android编程>> Android编程实现TextView部分颜色变动的方法

Android编程实现TextView部分颜色变动的方法

作者:lee0oo0  发布时间:2021-05-29 15:12:23 

标签:Android,TextView,颜色

本文实例讲述了Android编程实现TextView部分颜色变动的方法。分享给大家供大家参考,具体如下:


public class StringHandleExampleActivity extends Activity {
 /** Called when the activity is first created. */
 private TextView textView;
 private String tempStr = "abcd12我的中古zx9yu5!f3,,";
 private StringBuffer sb;
 private List<Integer> list;
 @Override
 public void onCreate(Bundle savedInstanceState) {
   super.onCreate(savedInstanceState);
   setContentView(R.layout.main);
   sb = new StringBuffer();
   list = new ArrayList<Integer>();
   textView = (TextView) findViewById(R.id.textView);
   for (int i = 0; i < tempStr.length(); i++) {
     if (matcherReg(String.valueOf(tempStr.charAt(i)))) {
       list.add(i);
     }
   }
   SpannableStringBuilder style=new SpannableStringBuilder(tempStr);
   for (int i = 0; i < list.size(); i++) {
     System.out.println(list.get(i)+", ");
//      style.setSpan(new BackgroundColorSpan(Color.RED),list.get(i),list.get(i)+1,Spannable.SPAN_EXCLUSIVE_INCLUSIVE);   //设置指定位置textview的背景颜色
     style.setSpan(new ForegroundColorSpan(Color.RED),list.get(i),list.get(i)+1,Spannable.SPAN_EXCLUSIVE_INCLUSIVE);   //设置指定位置文字的颜色
   }
   textView.setText(style);
 }
 private boolean matcherReg(CharSequence c){
   String regEx="[^0-9]";  
   Pattern p = Pattern.compile(regEx);  
   Matcher m = p.matcher(c.toString());  
   if (m.matches()) {
     return false;
   }
   return true;
 }
}

希望本文所述对大家Android程序设计有所帮助。

0
投稿

猜你喜欢

手机版 软件编程 asp之家 www.aspxhome.com