Android 關於新浪微博字數的處理

需求:最近在做仿新浪微博的項目,遇到關於文本編輯框內文字的處理問題,時時的監聽文本框輸入瞭多少字符,當時沒有考慮到輸入的內容問題,現在要求是一個漢字 == 兩個英文字母,標點符號也區分英文和中文,一個中文標點== 兩個英文標點。
解決方式:通過輸入文本所占的字節數去判斷

封裝瞭一個方法:
[java] 
/**
 * 計算微博內容的長度  1個漢字 == 兩個英文字母所占的長度  標點符號區分英文和中文
 * @param c 所要統計的字符序列
 * @return 返回字符序列計算的長度
 */ 
public static long calculateWeiboLength(CharSequence c) { 
     
       double len = 0; 
       for (int i = 0; i < c.length(); i++) { 
               int temp = (int)c.charAt(i); 
               if (temp > 0 && temp < 127) { 
                       len += 0.5; 
               }else{ 
                       len ++; 
               } 
       } 
    return Math.round(len); 

使用時直接調用即可

You May Also Like