diff --git a/common/src/main/java/com/yunbao/common/Constants.java b/common/src/main/java/com/yunbao/common/Constants.java index 6f9ed2090..a0ea5df91 100644 --- a/common/src/main/java/com/yunbao/common/Constants.java +++ b/common/src/main/java/com/yunbao/common/Constants.java @@ -263,6 +263,8 @@ public class Constants { public static final String LIVE_SDK = "liveSdk"; public static final String LIVE_KSY_CONFIG = "liveKsyConfig"; + + public static final String LIVE_PK_RANDOM_START="RankingStartRandomPK"; public static final int LIVE_SDK_KSY = 0;//金山推流 public static final int LIVE_SDK_TX = 1;//腾讯推流 diff --git a/live/src/main/java/com/yunbao/live/event/LiveAudienceEvent.java b/live/src/main/java/com/yunbao/live/event/LiveAudienceEvent.java index fbffbf9d8..5e26ecbd4 100644 --- a/live/src/main/java/com/yunbao/live/event/LiveAudienceEvent.java +++ b/live/src/main/java/com/yunbao/live/event/LiveAudienceEvent.java @@ -487,7 +487,8 @@ public class LiveAudienceEvent extends BaseModel { IS_ATTENTION(72, "是否关注主播"), GIFT_WALL(73, "礼物墙"), UPDATE_FANS_TASK_STATUS(74, "更新粉丝任务状态"), - SUD_GAME_CREATE_ROOM(75, "主播创建sud游戏"); + SUD_GAME_CREATE_ROOM(75, "主播创建sud游戏"), + PK_RANK_START(76, "PK排位赛开始"); private int type; private String name; diff --git a/live/src/main/java/com/yunbao/live/socket/SocketRyClient.java b/live/src/main/java/com/yunbao/live/socket/SocketRyClient.java index 03b009666..ffe270aba 100644 --- a/live/src/main/java/com/yunbao/live/socket/SocketRyClient.java +++ b/live/src/main/java/com/yunbao/live/socket/SocketRyClient.java @@ -774,6 +774,21 @@ public class SocketRyClient { systemChatMessage2(stringBuffer.toString()); Bus.get().post(new QuickGiftingEvent().setHotNum(sendQuickGiftModel.getHotNum())); break; + case Constants.LIVE_PK_RANDOM_START: + item = map.getJSONObject("ct"); + item.getString("text"); + item.getString("pktt_img"); + item.getString("uid_win_continuity"); + item.getString("pkuid_win_continuity"); + pkRankBean = new PkRankBean(); + pkRankBean.setBlueVal(item.getString("pkuid_win_continuity")); + pkRankBean.setRedVal( item.getString("uid_win_continuity")); + pkRankBean.setPkTopImgUrl(item.getString("pktt_img")); + + EventBus.getDefault().post(new LiveAudienceEvent() + .setType(LiveAudienceEvent.LiveAudienceType.PK_RANK_START) + .setObject(pkRankBean)); + break; } } diff --git a/live/src/main/java/com/yunbao/live/views/LiveRoomViewHolder.java b/live/src/main/java/com/yunbao/live/views/LiveRoomViewHolder.java index c218370bf..1add376a6 100644 --- a/live/src/main/java/com/yunbao/live/views/LiveRoomViewHolder.java +++ b/live/src/main/java/com/yunbao/live/views/LiveRoomViewHolder.java @@ -387,7 +387,7 @@ public class LiveRoomViewHolder extends AbsViewHolder implements View.OnClickLis private FrameLayout pa_pao_layout; private LinearLayout combo_layout; private TextView combo_number; - private View quick_gift_reminder ; + private View quick_gift_reminder; @Subscribe(threadMode = ThreadMode.MAIN) public void onUpdata(String str) { @@ -720,6 +720,7 @@ public class LiveRoomViewHolder extends AbsViewHolder implements View.OnClickLis } } } + public void onQuickGifting3() { IMLoginManager.get(mContext).setQuickGiftIfFirst(); quick_gift_reminder.setVisibility(View.GONE); @@ -1565,7 +1566,7 @@ public class LiveRoomViewHolder extends AbsViewHolder implements View.OnClickLis pa_pao_layout = (FrameLayout) findViewById(R.id.pa_pao_layout); combo_layout = (LinearLayout) findViewById(R.id.combo_layout); combo_number = (TextView) findViewById(R.id.combo_number); - quick_gift_reminder = findViewById(R.id.quick_gift_reminder); + quick_gift_reminder = findViewById(R.id.quick_gift_reminder); pa_pao_layout.setVisibility(View.GONE); combo_layout.setVisibility(View.GONE); @@ -2435,8 +2436,10 @@ public class LiveRoomViewHolder extends AbsViewHolder implements View.OnClickLis } private String pkUidTmp = ""; + private String isLadders; public void initPkRank(String isLadders) { + this.isLadders = isLadders; //PK状态下,pkuid不能为空 if (pkUidTmp.equals(pkUid) && !StringUtil.isEmpty(pkUid)) { return; @@ -2447,11 +2450,38 @@ public class LiveRoomViewHolder extends AbsViewHolder implements View.OnClickLis } pkRankLayout.setTag(mLiveUid); pkUidTmp = pkUid; - pkRankLayout.setVisibility(View.GONE); - new LoadDian9TuUtil().loadDian9TuAssets2(mContext, liveRankPk2, "rectangle_new.png", 1); mRedVal.setVisibility(View.GONE); mBlueVal.setVisibility(View.GONE); mPkRankTopIcon.setVisibility(View.GONE); + new LoadDian9TuUtil().loadDian9TuAssets2(mContext, liveRankPk2, "rectangle_new.png", 1); + + } + + public void updatePkRankInfo(PkRankBean bean) { + pkRankLayout.setVisibility(View.VISIBLE); + liveRankPk2.setVisibility(View.VISIBLE); + if (Integer.parseInt(bean.getRedVal()) > 2) { + mRedVal.setVisibility(View.VISIBLE); + mRedVal.setText(bean.getRedVal() + (WordUtil.isNewZh() ? "連勝" : "Win")); + } + if (Integer.parseInt(bean.getBlueVal()) > 2) { + mBlueVal.setVisibility(View.VISIBLE); + mBlueVal.setText(bean.getBlueVal() + (WordUtil.isNewZh() ? "連勝" : "Win")); + } + mPkRankTopIcon.setVisibility(View.VISIBLE); + ImgLoader.display(mContext, bean.getPkTopImgUrl(), mPkRankTopIcon); + if (mRedVal.getVisibility() == View.VISIBLE) { + RelativeLayout.LayoutParams redValLayoutParams = (RelativeLayout.LayoutParams) mRedVal.getLayoutParams(); + redValLayoutParams.bottomMargin = DpUtil.dp2px(10); + mRedVal.setLayoutParams(redValLayoutParams); + } + if (mBlueVal.getVisibility() == View.VISIBLE) { + RelativeLayout.LayoutParams blueValLayoutParams = (RelativeLayout.LayoutParams) mBlueVal.getLayoutParams(); + blueValLayoutParams.bottomMargin = DpUtil.dp2px(10); + mBlueVal.setLayoutParams(blueValLayoutParams); + } + } + public void initRankPKInfo(String mLiveUid){ LiveNetManager.get(mContext) .getRandomPk(mLiveUid, pkUid, new com.yunbao.common.http.base.HttpCallback() { @Override @@ -2531,7 +2561,6 @@ public class LiveRoomViewHolder extends AbsViewHolder implements View.OnClickLis pkUidTmp = ""; } }); - } /** @@ -2555,7 +2584,7 @@ public class LiveRoomViewHolder extends AbsViewHolder implements View.OnClickLis * @param rank 小时榜 */ public void setHourRankData(long rank) { - if (mHotText != null) { + if (mHotText != null) { if (rank == 0) { mHotText.setText(R.string.no_rank_data); } else { @@ -2584,9 +2613,11 @@ public class LiveRoomViewHolder extends AbsViewHolder implements View.OnClickLis } } + public void setHotNum(String hotNum) { setHotData(formatBigNum.formatBigNum(hotNum)); } + /** * 更新心愿单进度 * @@ -4872,6 +4903,9 @@ public class LiveRoomViewHolder extends AbsViewHolder implements View.OnClickLis case UPDATE_FANS_TASK_STATUS: updateFansMessageRed(); break; + case PK_RANK_START: + updatePkRankInfo((PkRankBean) event.getObject()); + break; } } diff --git a/live/src/main/java/com/yunbao/live/views/PortraitLiveManager.java b/live/src/main/java/com/yunbao/live/views/PortraitLiveManager.java index 703824e77..1440059f5 100644 --- a/live/src/main/java/com/yunbao/live/views/PortraitLiveManager.java +++ b/live/src/main/java/com/yunbao/live/views/PortraitLiveManager.java @@ -498,6 +498,8 @@ public class PortraitLiveManager implements LivePlayListener, SocketMessageListe mLiveRoomViewHolder.setUserList(data.getEnterRoomInfo().getUserlists()); //设置靓号 mLiveRoomViewHolder.setAnchorGoodNumber(data.getLiveInfo().getGoodnum()); + //初始化天梯赛信息 + mLiveRoomViewHolder.initRankPKInfo(String.valueOf(data.getLiveInfo().getUid())); if (!StringUtil.isEmpty(mLiveBean.getGiftId())) { mLiveRoomViewHolder.openGiftDialog(mLiveBean.getGiftId()); }