/** * 将给定的字符串给定的长度两端对齐 * * @param str 待对齐字符串 * @param size 汉字个数,eg:size=5,则将str在5个汉字的长度里两端对齐 * @Return */ public static SpannableStringBuilder justifyString(String str, int size) { SpannableStringBuilder spannableStringBuilder = new SpannableStringBuilder(); if (TextUtils.isEmpty(str)) { return spannableStringBuilder; } char[] chars = str.toCharArray(); if (chars.length >= size || chars.length == 1) { return spannableStringBuilder.append(str); } int l = chars.length; float scale = (float) (size - l) / (l - 1); for (int i = 0; i < l; i++) { spannableStringBuilder.append(chars[i]); if (i != l - 1) { SpannableString s = new SpannableString(" ");//全角空格 s.setSpan(new ScaleXSpan(scale), 0, 1, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); spannableStringBuilder.append(s); } } return spannableStringBuilder;
}
使用Collections.max(集合)取出集合中最大的值
//例如
List<String> slist = new ArrayList<>(); for (int i = 0; i < ability_name.size(); i++) { slist.add(ability_name.get(i).toString().length() + ""); } Log.i("--------collec",Collections.max(slist));