From 61fbc15809084a423949cc0138aea24aeb0b2b2e Mon Sep 17 00:00:00 2001 From: huangjian Date: Tue, 22 Dec 2020 11:26:13 +0800 Subject: [PATCH] =?UTF-8?q?1.PK=E5=80=BC=E6=A0=BC=E5=BC=8F=E5=8C=96?= =?UTF-8?q?=E6=A0=B7=E5=BC=8F=E4=BF=AE=E6=94=B9=202.=E6=8C=89=E4=BA=BA?= =?UTF-8?q?=E6=95=B0PK=E5=85=AC=E5=B1=8F=E5=A2=9E=E5=8A=A0=E8=83=9C?= =?UTF-8?q?=E5=88=A9=E6=96=B9=E6=88=98=E6=96=97=E5=80=BC=E5=B1=95=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../avroom/adapter/RecordForPKAdapter.java | 4 +- .../erban/avroom/dialog/PKResultDialog.java | 9 ++-- .../avroom/dialog/PKScoreBoardDialog.java | 4 +- .../erban/avroom/widget/MessageView.java | 54 +++++++++++-------- .../erban/avroom/widget/PKBoardView.java | 20 +++---- .../main/res/layout/dialog_pk_score_board.xml | 4 +- .../main/res/layout/layout_pk_board_view.xml | 4 +- .../utils/FormatUtils.java | 33 ++++++++---- 8 files changed, 77 insertions(+), 55 deletions(-) diff --git a/app/src/main/java/com/yizhuan/erban/avroom/adapter/RecordForPKAdapter.java b/app/src/main/java/com/yizhuan/erban/avroom/adapter/RecordForPKAdapter.java index ab29a5e05..62e7cd7d0 100644 --- a/app/src/main/java/com/yizhuan/erban/avroom/adapter/RecordForPKAdapter.java +++ b/app/src/main/java/com/yizhuan/erban/avroom/adapter/RecordForPKAdapter.java @@ -83,7 +83,7 @@ public class RecordForPKAdapter extends BaseQuickAdapter 0) { - tvRedTeamScore.setText(FormatUtils.formatToShortHalfUp(redTeam.getScore())); - tvBlueTeamScore.setText(FormatUtils.formatToShortHalfUp(blueTeam.getScore())); + tvRedTeamScore.setText(FormatUtils.formatPKValue(redTeam.getScore())); + tvBlueTeamScore.setText(FormatUtils.formatPKValue(blueTeam.getScore())); int percent = (int) ((float) redTeam.getScore() / (float) totalScore * 100.0f); pbScore.setProgress(percent); } else { diff --git a/app/src/main/java/com/yizhuan/erban/avroom/widget/MessageView.java b/app/src/main/java/com/yizhuan/erban/avroom/widget/MessageView.java index 4a22c1d86..b93f4a0f4 100644 --- a/app/src/main/java/com/yizhuan/erban/avroom/widget/MessageView.java +++ b/app/src/main/java/com/yizhuan/erban/avroom/widget/MessageView.java @@ -1287,9 +1287,9 @@ public class MessageView extends FrameLayout { case RoomPkData.PK_RESULT_DRAW: text.append("平局!\n", new ForegroundColorSpan(whiteColor)); if (blueTeam != null && redTeam != null) { - text.append(String.format(Locale.getDefault(), "PK值 %s : %s \n", - FormatUtils.formatToShortHalfUp(blueTeam.getScore()), - FormatUtils.formatToShortHalfUp(redTeam.getScore())), + text.append(String.format(Locale.getDefault(), "PK值 %s : %s", + FormatUtils.formatPKValue(blueTeam.getScore()), + FormatUtils.formatPKValue(redTeam.getScore())), new ForegroundColorSpan(whiteColor)); UserInfo redProtector = redTeam.getProtector(); @@ -1298,15 +1298,15 @@ public class MessageView extends FrameLayout { || blueProtector == null || blueProtector.getUid() == 0) { break; } - text.append(String.format(Locale.getDefault(), "蓝队守护者:%s \n", blueProtector.getNick()), + text.append(String.format(Locale.getDefault(), "\n蓝队守护者:%s \n", blueProtector.getNick()), new ForegroundColorSpan(whiteColor)) .append(String.format(Locale.getDefault(), "蓝队守护值:%s \n", - FormatUtils.formatToShortHalfUp(blueTeam.getProtecScore())), + FormatUtils.formatPKValue(blueTeam.getProtecScore())), new ForegroundColorSpan(whiteColor)) .append(String.format(Locale.getDefault(), "红队守护者:%s \n", redProtector.getNick()), new ForegroundColorSpan(whiteColor)) - .append(String.format(Locale.getDefault(), "红队守护值:%s \n", - FormatUtils.formatToShortHalfUp(redTeam.getProtecScore())), + .append(String.format(Locale.getDefault(), "红队守护值:%s", + FormatUtils.formatPKValue(redTeam.getProtecScore())), new ForegroundColorSpan(whiteColor)); } break; @@ -1315,19 +1315,23 @@ public class MessageView extends FrameLayout { text.append("蓝队胜利!\n", new ForegroundColorSpan(whiteColor)); if (blueTeam != null && redTeam != null) { text.append(String.format(Locale.getDefault(), "PK值 %s : %s \n", - FormatUtils.formatToShortHalfUp(blueTeam.getScore()), - FormatUtils.formatToShortHalfUp(redTeam.getScore())), + FormatUtils.formatPKValue(blueTeam.getScore()), + FormatUtils.formatPKValue(redTeam.getScore())), new ForegroundColorSpan(whiteColor)); UserInfo blueProtector = blueTeam.getProtector(); if (blueProtector == null) { - break; + text.append(String.format(Locale.getDefault(), "胜利方战斗值:%s", + FormatUtils.formatPKValue(blueTeam.getScore())), + new ForegroundColorSpan(whiteColor)); + + } else { + text.append(String.format(Locale.getDefault(), "胜方守护者:%s \n", blueProtector.getNick()), + new ForegroundColorSpan(whiteColor)) + .append(String.format(Locale.getDefault(), "胜方守护值:%s", + FormatUtils.formatPKValue(blueTeam.getProtecScore())), + new ForegroundColorSpan(whiteColor)); } - text.append(String.format(Locale.getDefault(), "胜方守护者:%s \n", blueProtector.getNick()), - new ForegroundColorSpan(whiteColor)) - .append(String.format(Locale.getDefault(), "胜方守护值:%s \n", - FormatUtils.formatToShortHalfUp(blueTeam.getProtecScore())), - new ForegroundColorSpan(whiteColor)); } break; @@ -1335,19 +1339,23 @@ public class MessageView extends FrameLayout { text.append("红队胜利!\n", new ForegroundColorSpan(whiteColor)); if (blueTeam != null && redTeam != null) { text.append(String.format(Locale.getDefault(), "PK值 %s : %s \n", - FormatUtils.formatToShortHalfUp(redTeam.getScore()), - FormatUtils.formatToShortHalfUp(blueTeam.getScore())), + FormatUtils.formatPKValue(redTeam.getScore()), + FormatUtils.formatPKValue(blueTeam.getScore())), new ForegroundColorSpan(whiteColor)); UserInfo redProtector = redTeam.getProtector(); if (redProtector == null) { - break; + text.append(String.format(Locale.getDefault(), "胜利方战斗值:%s", + FormatUtils.formatPKValue(redTeam.getScore())), + new ForegroundColorSpan(whiteColor)); + } else { + text.append(String.format(Locale.getDefault(), "红队守护者:%s \n", redProtector.getNick()), + new ForegroundColorSpan(whiteColor)) + .append(String.format(Locale.getDefault(), "红队守护值:%s", + FormatUtils.formatPKValue(redTeam.getProtecScore())), + new ForegroundColorSpan(whiteColor)); } - text.append(String.format(Locale.getDefault(), "红队守护者:%s \n", redProtector.getNick()), - new ForegroundColorSpan(whiteColor)) - .append(String.format(Locale.getDefault(), "红队守护值:%s \n", - FormatUtils.formatToShortHalfUp(redTeam.getProtecScore())), - new ForegroundColorSpan(whiteColor)); + } break; } diff --git a/app/src/main/java/com/yizhuan/erban/avroom/widget/PKBoardView.java b/app/src/main/java/com/yizhuan/erban/avroom/widget/PKBoardView.java index 95a7cf41a..8086a9c50 100644 --- a/app/src/main/java/com/yizhuan/erban/avroom/widget/PKBoardView.java +++ b/app/src/main/java/com/yizhuan/erban/avroom/widget/PKBoardView.java @@ -144,11 +144,11 @@ public class PKBoardView extends RelativeLayout implements View.OnClickListener PKTeamInfo blueTeamInfo = PkModel.get().findTeamByTeamId(PKTeamInfo.TEAM_BLUE); if (blueTeamInfo != null) { - tvBlueTeamScore.setText(FormatUtils.formatToShortHalfUp(blueTeamInfo.getScore())); + tvBlueTeamScore.setText(FormatUtils.formatPKValue(blueTeamInfo.getScore())); } PKTeamInfo redTeamInfo = PkModel.get().findTeamByTeamId(PKTeamInfo.TEAM_RED); if (redTeamInfo != null) { - tvRedTeamScore.setText(FormatUtils.formatToShortHalfUp(redTeamInfo.getScore())); + tvRedTeamScore.setText(FormatUtils.formatPKValue(redTeamInfo.getScore())); } } else { tvPkTimer.setText("未开始"); @@ -178,8 +178,8 @@ public class PKBoardView extends RelativeLayout implements View.OnClickListener llPkScoreBoard.setOnClickListener(null); if (PkModel.get().getCurPkInfo() != null && PkModel.get().getCurPkInfo().getPkStatus() == RoomPkData.PK_STATUS_BEFORE_PK) { - tvBlueTeamScore.setText("0.00"); - tvRedTeamScore.setText("0.00"); + tvBlueTeamScore.setText(FormatUtils.formatPKValue(0)); + tvRedTeamScore.setText(FormatUtils.formatPKValue(0)); } } } @@ -254,11 +254,11 @@ public class PKBoardView extends RelativeLayout implements View.OnClickListener if (PkModel.get().getCurPkInfo().getPkStatus() == RoomPkData.PK_STATUS_IN_PK) { PKTeamInfo blueTeamInfo = PkModel.get().findTeamByTeamId(PKTeamInfo.TEAM_BLUE); if (blueTeamInfo != null) { - tvBlueTeamScore.setText(FormatUtils.formatToShortHalfUp(blueTeamInfo.getScore())); + tvBlueTeamScore.setText(FormatUtils.formatPKValue(blueTeamInfo.getScore())); } PKTeamInfo redTeamInfo = PkModel.get().findTeamByTeamId(PKTeamInfo.TEAM_RED); if (redTeamInfo != null) { - tvRedTeamScore.setText(FormatUtils.formatToShortHalfUp(redTeamInfo.getScore())); + tvRedTeamScore.setText(FormatUtils.formatPKValue(redTeamInfo.getScore())); } if (redTeamInfo != null && blueTeamInfo != null) { @@ -276,12 +276,12 @@ public class PKBoardView extends RelativeLayout implements View.OnClickListener if (onActionListener != null) { onActionListener.onEndPK(); } - tvBlueTeamScore.setText("0.00"); - tvRedTeamScore.setText("0.00"); + tvBlueTeamScore.setText(FormatUtils.formatPKValue(0)); + tvRedTeamScore.setText(FormatUtils.formatPKValue(0)); } if (PkModel.get().getCurPkInfo().getPkStatus() == RoomPkData.PK_STATUS_TERMINAL_PK_BEFORE_END) { - tvBlueTeamScore.setText("0.00"); - tvRedTeamScore.setText("0.00"); + tvBlueTeamScore.setText(FormatUtils.formatPKValue(0)); + tvRedTeamScore.setText(FormatUtils.formatPKValue(0)); } } diff --git a/app/src/main/res/layout/dialog_pk_score_board.xml b/app/src/main/res/layout/dialog_pk_score_board.xml index f7c784d25..180e12fba 100644 --- a/app/src/main/res/layout/dialog_pk_score_board.xml +++ b/app/src/main/res/layout/dialog_pk_score_board.xml @@ -47,7 +47,7 @@ android:layout_centerVertical="true" android:gravity="center_horizontal" android:includeFontPadding="false" - android:text="0.00" + android:text="0" android:textColor="@color/color_FFFFFF" android:textSize="12dp" app:layout_constraintStart_toStartOf="@id/pb_score" @@ -61,7 +61,7 @@ android:layout_centerVertical="true" android:gravity="center_horizontal" android:includeFontPadding="false" - android:text="0.00" + android:text="0" android:textColor="@color/color_FFFFFF" android:textSize="12dp" app:layout_constraintEnd_toEndOf="@id/pb_score" diff --git a/app/src/main/res/layout/layout_pk_board_view.xml b/app/src/main/res/layout/layout_pk_board_view.xml index bbbc9ee6b..e0b152502 100644 --- a/app/src/main/res/layout/layout_pk_board_view.xml +++ b/app/src/main/res/layout/layout_pk_board_view.xml @@ -80,7 +80,7 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:lines="1" - android:text="0.00" + android:text="0" android:textColor="@color/color_FFFFFF" android:textSize="12dp" app:layout_constraintEnd_toEndOf="@id/fl_left" @@ -164,7 +164,7 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:lines="1" - android:text="0.00" + android:text="0" android:textColor="@color/color_FFFFFF" android:textSize="12dp" app:layout_constraintEnd_toEndOf="@id/fl_right" diff --git a/library/src/main/java/com/yizhuan/xchat_android_library/utils/FormatUtils.java b/library/src/main/java/com/yizhuan/xchat_android_library/utils/FormatUtils.java index 575e271bd..e307def09 100644 --- a/library/src/main/java/com/yizhuan/xchat_android_library/utils/FormatUtils.java +++ b/library/src/main/java/com/yizhuan/xchat_android_library/utils/FormatUtils.java @@ -34,29 +34,33 @@ public class FormatUtils { /** * 把过长的金额类数字,转换成两位小数带万,亿,兆 缩写 * 10000.00 -> 1.00万 丢掉两位小数后面的小数 + * * @param num * @return */ - public static String formatToShortDown(double num){ + public static String formatToShortDown(double num) { return formatToShort(num, RoundingMode.DOWN); } /** * 把过长的金额类数字,转换成两位小数带万,亿,兆 缩写 * 10000.00 -> 1.00万 四舍五入两位小数后面的小数 + * * @param num * @return */ - public static String formatToShortHalfUp(double num){ + public static String formatToShortHalfUp(double num) { return formatToShort(num, RoundingMode.HALF_UP); } + /** * 把过长的金额类数字,转换成两位小数带万,亿,兆 缩写 * 10000.00 -> 1.00万 + * * @param num * @return */ - public static String formatToShort(double num, RoundingMode roundingMode){ + public static String formatToShort(double num, RoundingMode roundingMode) { try { DecimalFormat decimalFormat = new DecimalFormat("#,##0.00"); decimalFormat.setRoundingMode(roundingMode); @@ -64,16 +68,16 @@ public class FormatUtils { double yi = Math.pow(10.0f, 8); double zhao = Math.pow(10.0f, 12); double res = num; - if (Math.abs(num / wan) < 1){ + if (Math.abs(num / wan) < 1) { res = num; return decimalFormat.format(res); - }else if(Math.abs(num / wan) >= 1 && Math.abs(num / yi) < 1){ + } else if (Math.abs(num / wan) >= 1 && Math.abs(num / yi) < 1) { res = num / wan; return decimalFormat.format(res) + "万"; - }else if(Math.abs(num / yi) >= 1 && Math.abs(num /zhao) < 1){ + } else if (Math.abs(num / yi) >= 1 && Math.abs(num / zhao) < 1) { res = num / yi; return decimalFormat.format(res) + "亿"; - }else { + } else { res = num / zhao; return decimalFormat.format(res) + "兆"; } @@ -85,21 +89,28 @@ public class FormatUtils { /** * 将手机号码 显示成带隐私形式 + * * @param phoneNum * @param beginIndex 开始用* 号替换位置 - * @param endIndex 结束用* 号替换位置 + * @param endIndex 结束用* 号替换位置 * @return */ - public static String formatPhoneNumWithPrivacy(String phoneNum, int beginIndex, int endIndex){ + public static String formatPhoneNumWithPrivacy(String phoneNum, int beginIndex, int endIndex) { StringBuffer resSB = new StringBuffer(); for (int i = 0; i < phoneNum.length(); i++) { - if (i >= beginIndex && i < endIndex){ + if (i >= beginIndex && i < endIndex) { resSB.append("*"); - }else { + } else { resSB.append(phoneNum.charAt(i)); } } return resSB.toString(); } + //PK值相关格式化方式,统一方法,方便以后更改样式 + public static String formatPKValue(long value) { + if (value >= 100000) return (value / 100) / 100f + "万"; + return String.valueOf(value); + } + }