简书链接:用html生成安卓排版数据多行对齐方案实现
文章字数:156,阅读全文大约需要1分钟

解决思路就是因为值是不确定的,所以在得到值之后全部确保能填充这么多数值即可解决问题,刚开始用0填充,发现是可以对齐
字符选择
1 2 3 4 5 6
| // 表示普通空格   // 表示半角空格   // 表示全角空格   // 表示窄空格 ‍ // 表示零宽连接符 ‌ // 表示零宽非连接符
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| internal static void configMixWidthSpace(string source, int minLen, StringBuilder sb, string inserChar) { int needInnerCharCount = minLen - source.Length; if (needInnerCharCount > 0) { for (int i = 0; i < needInnerCharCount; i++) { sb.Append(inserChar); //sb.Append("1"); }
} }
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| public static void buildInfoHtmlStrFromNumber(string name,string age,string sex,string minzu, JObject obj) { StringBuilder sb = new StringBuilder(); sb.Append("姓名:"); sb.Append(name+ ""); int maxWidth = 10; MyUtil.configMixWidthSpace(name, maxWidth, sb, " "); sb.Append("年龄:"); sb.Append(age+ ""); MyUtil.configMixWidthSpace(age, maxWidth, sb, " "); sb.Append("<br/>性别:"); sb.Append(sex+ ""); MyUtil.configMixWidthSpace(sex, maxWidth, sb, " "); sb.Append("民族:"); sb.Append(minzu + ""); MyUtil.configMixWidthSpace(minzu , maxWidth, sb, " "); obj["info"] = sb.ToString(); }
|