文本框工具類--TextViewUtil

bugyw 9年前發布 | 1K 次閱讀 Java Android

本工具類功能:

給TextView設置部分大小
給TextView設置部分顏色
給TextView設置下劃線
半角轉換為全角
去除特殊字符或將所有中文標號替換為英文標號

/**

  • Created by peng on 2015/06/16.
  • 文本框工具類 */ public class TextViewUtil {

    //給TextView設置部分大小 public static void setPartialSize(TextView tv, int start, int end, int textSize) {

     String s = tv.getText().toString();
     Spannable spannable = new SpannableString(s);
     spannable.setSpan(new AbsoluteSizeSpan(textSize), start, end, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
     tv.setText(spannable);
    

    }

    //給TextView設置部分顏色 public static void setPartialColor(TextView tv, int start, int end, int textColor) {

     String s = tv.getText().toString();
     Spannable spannable = new SpannableString(s);
     spannable.setSpan(new ForegroundColorSpan(textColor), start, end, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
     tv.setText(spannable);
    

    }

    //給TextView設置下劃線 public static void setUnderLine(TextView tv) {

     if (tv.getText() != null) {
         String udata = tv.getText().toString();
         SpannableString content = new SpannableString(udata);
         content.setSpan(new UnderlineSpan(), 0, udata.length(), 0);
         tv.setText(content);
         content.setSpan(new UnderlineSpan(), 0, udata.length(), 0);
     } else {
         tv.getPaint().setFlags(Paint.UNDERLINE_TEXT_FLAG);
     }
    

    }

    //取消TextView的置下劃線 public static void clearUnderLine(TextView tv) {

     tv.getPaint().setFlags(0);
    

    }

    //半角轉換為全角 public static String ToDBC(String input) {

     char[] c = input.toCharArray();
     for (int i = 0; i < c.length; i++) {
         if (c[i] == 12288) {
             c[i] = (char) 32;
             continue;
         }
         if (c[i] > 65280 && c[i] < 65375)
             c[i] = (char) (c[i] - 65248);
     }
     return new String(c);
    

    }

    //去除特殊字符或將所有中文標號替換為英文標號 public static String replaceCharacter(String str) {

     str = str.replaceAll("【", "[").replaceAll("】", "]")
             .replaceAll("!", "!").replaceAll(":", ":").replaceAll("(", "(").replaceAll("(", ")");// 替換中文標號
     String regEx = "[『』]"; // 清除掉特殊字符
     Pattern p = Pattern.compile(regEx);
     Matcher m = p.matcher(str);
     return m.replaceAll("").trim();
    

    }

}</pre>

 本文由用戶 bugyw 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!