From a8751388c9a86ae95714a15279994d8aa426a26d Mon Sep 17 00:00:00 2001 From: zuoxiao <470321431@qq.com> Date: 星期五, 13 六月 2025 14:59:02 +0800 Subject: [PATCH] feat(generallibrary): 优化充值功能并添加水价获取- 在 activity_recharge_detail.xml 中移除了不必要的 bold 样式- 在 EditText 中添加了金额输入限制(数字和小数点)- 在 BaseApplication 中添加了水价信息存储 - 在 MainActivity 中实现了延时获取水价的功能- 优化了 RechargeDetailActivity 中的水价检查和使用逻辑 - 在 README.md 中添加了金额格式化和水价获取的最佳实践指南 --- baselibrary/src/main/java/com/dayu/baselibrary/tools/HexUtil.java | 23 +++++++++++++++++++++++ 1 files changed, 23 insertions(+), 0 deletions(-) diff --git a/baselibrary/src/main/java/com/dayu/baselibrary/tools/HexUtil.java b/baselibrary/src/main/java/com/dayu/baselibrary/tools/HexUtil.java index 19f3ca7..0cde97f 100644 --- a/baselibrary/src/main/java/com/dayu/baselibrary/tools/HexUtil.java +++ b/baselibrary/src/main/java/com/dayu/baselibrary/tools/HexUtil.java @@ -58,6 +58,29 @@ return ((data & 0xF0) >> 4) * 10 + ((data & 0x0F)); } + + public static byte[] getIntToBCD(int number) { + // 鑾峰彇鏁存暟鐨勫瓧绗︿覆琛ㄧず褰㈠紡 + String numberStr = Integer.toString(number); + + // 鍒涘缓涓�涓瓧鑺傛暟缁勪互瀛樺偍BCD琛ㄧず + int len = numberStr.length(); + byte[] bcd = new byte[(len + 1) / 2]; + + int j = 0; + // 濡傛灉鏁板瓧鐨勯暱搴︽槸濂囨暟锛岄渶瑕佸湪鍓嶉潰娣诲姞涓�涓�0 + if (len % 2 != 0) { + numberStr = "0" + numberStr; // 鍏堟坊鍔犲墠瀵奸浂 + len++; + } + + // 灏嗘瘡涓�瀵规暟瀛楄浆鎹负涓�涓瓧鑺� + for (int i = 0; i < len; i += 2) { + bcd[j++] = (byte) (((numberStr.charAt(i) - '0') << 4) | (numberStr.charAt(i + 1) - '0')); + } + + return bcd; + } /** * short10杩涘埗杞�16杩涘埗 浣庝綅鍦ㄥ墠楂樹綅鍦ㄥ悗 * -- Gitblit v1.8.0