调整PK排位赛判断

This commit is contained in:
zlzw 2022-11-16 15:03:25 +08:00
parent 0f457efce6
commit d53d250e6f
6 changed files with 49 additions and 33 deletions

View File

@ -706,7 +706,7 @@ public abstract class LiveActivity extends AbsActivity implements SocketMessageL
* 主播与主播PK 所有人收到PK开始的回调 * 主播与主播PK 所有人收到PK开始的回调
*/ */
@Override @Override
public void onLinkMicPkStart(final String pkUid, final String pkhead, final String pkname) { public void onLinkMicPkStart(final String pkUid, final String pkhead, final String pkname,String isLadders) {
Log.e("ry", "pkUid" + pkUid + "pkhead" + pkhead + "pkname" + pkname); Log.e("ry", "pkUid" + pkUid + "pkhead" + pkhead + "pkname" + pkname);
if (mLiveRyLinkMicPkPresenter != null && mLiveRoomViewHolder != null) { if (mLiveRyLinkMicPkPresenter != null && mLiveRoomViewHolder != null) {
mLiveRyLinkMicPkPresenter.onLinkMicPkStart(pkUid, 1); mLiveRyLinkMicPkPresenter.onLinkMicPkStart(pkUid, 1);
@ -718,6 +718,7 @@ public abstract class LiveActivity extends AbsActivity implements SocketMessageL
Log.e("tasdsdg", mLiveUid + "1111" + CommonAppConfig.getInstance().getUid()); Log.e("tasdsdg", mLiveUid + "1111" + CommonAppConfig.getInstance().getUid());
if (!mLiveUid.equals(CommonAppConfig.getInstance().getUid())) { if (!mLiveUid.equals(CommonAppConfig.getInstance().getUid())) {
mLiveRoomViewHolder.setOtherInfo(pkUid, pkhead, pkname); mLiveRoomViewHolder.setOtherInfo(pkUid, pkhead, pkname);
mLiveRoomViewHolder.initPkRank(isLadders);
} }
} }
} }

View File

@ -763,13 +763,13 @@ public class SocketClient {
break; break;
case 2://收到对方确认主播PK回调 case 2://收到对方确认主播PK回调
mListener.onLinkMicToPk(map.getString("uid"), map.getString("pkhead"), map.getString("pkname")); mListener.onLinkMicToPk(map.getString("uid"), map.getString("pkhead"), map.getString("pkname"));
mListener.onLinkMicPkStart(map.getString("uid"), map.getString("pkhead"), map.getString("pkname")); mListener.onLinkMicPkStart(map.getString("uid"), map.getString("pkhead"), map.getString("pkname"),map.getString("is_ladders"));
break; break;
case 3://对方主播拒绝PK的回调 case 3://对方主播拒绝PK的回调
mListener.onLinkMicPkRefuse(); mListener.onLinkMicPkRefuse();
break; break;
case 4://所有人收到PK开始址的回调 case 4://所有人收到PK开始址的回调
mListener.onLinkMicPkStart(map.getString("pkuid"), map.getString("pkhead"), map.getString("pkname")); mListener.onLinkMicPkStart(map.getString("pkuid"), map.getString("pkhead"), map.getString("pkname"),map.getString("is_ladders"));
break; break;
case 5://PK时候断开连麦的回调 case 5://PK时候断开连麦的回调
if (LivePushTxViewHolder.mTRTCCloud != null) { if (LivePushTxViewHolder.mTRTCCloud != null) {

View File

@ -247,7 +247,7 @@ public interface SocketMessageListener {
/** /**
* 主播与主播PK 所有人收到PK开始的回调 * 主播与主播PK 所有人收到PK开始的回调
*/ */
void onLinkMicPkStart(String pkUid, String pkhead, String pkname); void onLinkMicPkStart(String pkUid, String pkhead, String pkname,String isLadders);
/** /**
* 主播与主播PK 断开连麦pk的回调 * 主播与主播PK 断开连麦pk的回调

View File

@ -1004,13 +1004,13 @@ public class SocketRyClient {
break; break;
case 2://收到对方主播PK回调 case 2://收到对方主播PK回调
mListener.onLinkMicToPk(map.getString("uid"), map.getString("pkhead"), map.getString("pkname")); mListener.onLinkMicToPk(map.getString("uid"), map.getString("pkhead"), map.getString("pkname"));
mListener.onLinkMicPkStart(map.getString("uid"), map.getString("pkhead"), map.getString("pkname"));// mListener.onLinkMicPkStart(map.getString("uid")); mListener.onLinkMicPkStart(map.getString("uid"), map.getString("pkhead"), map.getString("pkname"),map.getString("is_ladders"));// mListener.onLinkMicPkStart(map.getString("uid"));
break; break;
case 3://对方主播拒绝PK的回调 case 3://对方主播拒绝PK的回调
mListener.onLinkMicPkRefuse(); mListener.onLinkMicPkRefuse();
break; break;
case 4://所有人收到PK开始址的回调 case 4://所有人收到PK开始址的回调
mListener.onLinkMicPkStart(map.getString("pkuid"), map.getString("pkhead"), map.getString("pkname")); mListener.onLinkMicPkStart(map.getString("pkuid"), map.getString("pkhead"), map.getString("pkname"),map.getString("is_ladders"));
break; break;
case 5://PK时候断开连麦的回调 case 5://PK时候断开连麦的回调
if (rtcRoom != null) { if (rtcRoom != null) {

View File

@ -1511,49 +1511,63 @@ public class LiveRoomViewHolder extends AbsViewHolder implements View.OnClickLis
initPkRank(); initPkRank();
} }
private void initPkRankView() {
if(pkRankVf.getTag()!=null){
return;
}
LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(DpUtil.dp2px(20), DpUtil.dp2px(22));
LinearLayout.LayoutParams textParams = new LinearLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT);
params.leftMargin = DpUtil.dp2px(2);
textParams.setMarginStart(DpUtil.dp2px(1));
View hourView = LayoutInflater.from(mContext).inflate(R.layout.view_wish_list, null);
ImageView titleIcon = new ImageView(mContext);
mPkRankIcon = hourView.findViewById(R.id.wish_pic);
mPkRankText = hourView.findViewById(R.id.wish_index);
mPkRankText.setLayoutParams(textParams);
mPkRankText.setGravity(Gravity.CENTER);
titleIcon.setImageResource(R.mipmap.icon_pk_rank);
titleIcon.setLayoutParams(new LinearLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT));
mPkRankIcon.setLayoutParams(params);
pkRankVf.addView(titleIcon);
pkRankVf.addView(hourView);
pkRankVf.startFlipping();
pkRankVf.setTag("start");
}
private void initPkRank() { private void initPkRank() {
initPkRank(null);
}
public void initPkRank(String isLadders) {
API.get().pdLiveApi(mContext) API.get().pdLiveApi(mContext)
.getPkRanksList(mLiveUid, pkUid) .getPkRanksList(mLiveUid, pkUid)
.observeOn(AndroidSchedulers.mainThread()) .observeOn(AndroidSchedulers.mainThread())
.subscribeOn(Schedulers.io()) .subscribeOn(Schedulers.io())
.subscribe(listResponseModel -> { .subscribe(listResponseModel -> {
PkRankBean bean = listResponseModel.getData().getInfo(); PkRankBean bean = listResponseModel.getData().getInfo();
ToastUtil.show("触发PK排位赛");
Log.i("PK", bean.toString());
if (bean != null) { if (bean != null) {
LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(DpUtil.dp2px(20), DpUtil.dp2px(22)); Log.i("PK", bean.toString() + " | " + isLadders);
LinearLayout.LayoutParams textParams = new LinearLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT); initPkRankView();
params.leftMargin = DpUtil.dp2px(2);
textParams.setMarginStart(DpUtil.dp2px(1));
View hourView = LayoutInflater.from(mContext).inflate(R.layout.view_wish_list, null);
ImageView titleIcon = new ImageView(mContext);
mPkRankIcon = hourView.findViewById(R.id.wish_pic);
mPkRankText = hourView.findViewById(R.id.wish_index);
mPkRankText.setText(bean.getName()); mPkRankText.setText(bean.getName());
mPkRankText.setLayoutParams(textParams);
mPkRankText.setGravity(Gravity.CENTER);
titleIcon.setImageResource(R.mipmap.icon_pk_rank);
ImgLoader.display(mContext, bean.getImg(), mPkRankIcon); ImgLoader.display(mContext, bean.getImg(), mPkRankIcon);
titleIcon.setLayoutParams(new LinearLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT)); if (StringUtil.isEmpty(bean.getPkTopImgUrl()) || StringUtil.isEmpty(isLadders)) {
mPkRankIcon.setLayoutParams(params);
pkRankVf.addView(titleIcon);
pkRankVf.addView(hourView);
pkRankVf.startFlipping();
if(StringUtil.isEmpty(bean.getPkTopImgUrl())){
return; return;
} }
if(Integer.parseInt(bean.getRedVal())>2) { if (!StringUtil.isEmpty(isLadders)) {
bean.setPkTopImgUrl(isLadders);
}
if (Integer.parseInt(bean.getRedVal()) > 2) {
mRedVal.setVisibility(View.VISIBLE); mRedVal.setVisibility(View.VISIBLE);
mRedVal.setText(bean.getRedVal() + "連勝"); mRedVal.setText(bean.getRedVal() + "連勝");
} }
if(Integer.parseInt(bean.getBlueVal())>2) { if (Integer.parseInt(bean.getBlueVal()) > 2) {
mBlueVal.setVisibility(View.VISIBLE); mBlueVal.setVisibility(View.VISIBLE);
mBlueVal.setText(bean.getBlueVal() + "連勝"); mBlueVal.setText(bean.getBlueVal() + "連勝");
} }
mPkRankTopIcon.setVisibility(View.VISIBLE); mPkRankTopIcon.setVisibility(View.VISIBLE);
ImgLoader.display(mContext,bean.getPkTopImgUrl(),mPkRankTopIcon); ImgLoader.display(mContext, bean.getPkTopImgUrl(), mPkRankTopIcon);
} }
}, Throwable::printStackTrace) }, Throwable::printStackTrace)
.isDisposed(); .isDisposed();
@ -1593,6 +1607,7 @@ public class LiveRoomViewHolder extends AbsViewHolder implements View.OnClickLis
private void updatePkRank(PkRankBean bean) { private void updatePkRank(PkRankBean bean) {
mPkRankText.setText(bean.getName()); mPkRankText.setText(bean.getName());
ImgLoader.display(mContext, bean.getImg(), mPkRankIcon); ImgLoader.display(mContext, bean.getImg(), mPkRankIcon);
initPkRank();
} }
/** /**
@ -1784,8 +1799,6 @@ public class LiveRoomViewHolder extends AbsViewHolder implements View.OnClickLis
uidR2 = ""; uidR2 = "";
uidR1 = ""; uidR1 = "";
uidR3 = ""; uidR3 = "";
initPkRank();
} }
//双人pk关闭 //双人pk关闭
@ -1793,7 +1806,7 @@ public class LiveRoomViewHolder extends AbsViewHolder implements View.OnClickLis
mPkRankTopIcon.setVisibility(View.GONE); mPkRankTopIcon.setVisibility(View.GONE);
lt_pk_line.setVisibility(View.GONE); lt_pk_line.setVisibility(View.GONE);
livePKUserListBean = new LivePKUserListBean(); livePKUserListBean = new LivePKUserListBean();
pkUid=""; pkUid = "";
} }
/** /**
@ -3561,6 +3574,7 @@ public class LiveRoomViewHolder extends AbsViewHolder implements View.OnClickLis
case PK_TWO_START: case PK_TWO_START:
pkUid = event.getObject().toString(); pkUid = event.getObject().toString();
UpPkTwo(); UpPkTwo();
initPkRank();
break; break;
case PK_TWO_END: case PK_TWO_END:
closePkTwo(); closePkTwo();

View File

@ -923,7 +923,7 @@ public class PortraitLiveManager implements LivePlayListener, SocketMessageListe
} }
@Override @Override
public void onLinkMicPkStart(String pkUid, String pkhead, String pkname) { public void onLinkMicPkStart(String pkUid, String pkhead, String pkname,String isLadders) {
if (mLiveRyLinkMicPkPresenter != null && mLiveRoomViewHolder != null) { if (mLiveRyLinkMicPkPresenter != null && mLiveRoomViewHolder != null) {
mLiveRyLinkMicPkPresenter.onLinkMicPkStart(pkUid, 1); mLiveRyLinkMicPkPresenter.onLinkMicPkStart(pkUid, 1);
Handler handler = new Handler(); Handler handler = new Handler();
@ -934,6 +934,7 @@ public class PortraitLiveManager implements LivePlayListener, SocketMessageListe
Log.e("tasdsdg", liveID + "1111" + CommonAppConfig.getInstance().getUid()); Log.e("tasdsdg", liveID + "1111" + CommonAppConfig.getInstance().getUid());
if (!liveID.equals(CommonAppConfig.getInstance().getUid())) { if (!liveID.equals(CommonAppConfig.getInstance().getUid())) {
mLiveRoomViewHolder.setOtherInfo(pkUid, pkhead, pkname); mLiveRoomViewHolder.setOtherInfo(pkUid, pkhead, pkname);
mLiveRoomViewHolder.initPkRank(isLadders);
} }
} }
} }