添加礼物,活动

This commit is contained in:
18401019693
2022-08-17 15:16:14 +08:00
parent 062040ce15
commit 3a11fd3955
10 changed files with 173 additions and 75 deletions

View File

@@ -51,6 +51,7 @@ import com.yunbao.common.custom.ItemDecoration;
import com.yunbao.common.custom.MyViewPager;
import com.yunbao.common.dialog.LiveChargeDialogFragment;
import com.yunbao.common.dialog.LiveTotalDialog;
import com.yunbao.common.event.LiveAudienceEvent;
import com.yunbao.common.glide.ImgLoader;
import com.yunbao.common.http.CommonHttpConsts;
import com.yunbao.common.http.CommonHttpUtil;
@@ -79,9 +80,9 @@ import com.yunbao.live.bean.LivePKUserListBean;
import com.yunbao.live.bean.LiveUserGiftBean;
import com.yunbao.live.dialog.BlowkissDialog;
import com.yunbao.live.dialog.LiveGiftDialogFragment;
import com.yunbao.live.dialog.LiveHDDialogFragment;
import com.yunbao.live.dialog.NewUserDialog;
import com.yunbao.live.event.LinkMicTxAccEvent;
import com.yunbao.live.event.LiveAudienceEvent;
import com.yunbao.live.event.LiveRoomChangeEvent;
import com.yunbao.live.http.LiveHttpConsts;
import com.yunbao.live.http.LiveHttpUtil;
@@ -1384,14 +1385,34 @@ public class LiveAudienceActivity extends LiveActivity {
@Subscribe(threadMode = ThreadMode.MAIN)
public void onOpenDrawer(LiveAudienceEvent event) {
Bundle bundle = new Bundle();
switch (event.getType()) {
case SIDEBAR:
//从右边打开侧边栏
drawerLayout.openDrawer(GravityCompat.END);
break;
case BOTTOMCOLLECTION:
LiveTotalDialog fragment = new LiveTotalDialog();
fragment.show(getSupportFragmentManager(), "LiveTotalDialog");
LiveTotalDialog liveTotalDialog = new LiveTotalDialog();
liveTotalDialog.show(getSupportFragmentManager(), "LiveTotalDialog");
break;
case GIFTPOPUP:
if (TextUtils.isEmpty(mLiveUid) || TextUtils.isEmpty(mStream)) {
return;
}
LiveGiftDialogFragment liveGiftDialogFragment = new LiveGiftDialogFragment();
liveGiftDialogFragment.setLiveGuardInfo(mLiveGuardInfo);
bundle.putString(Constants.LIVE_UID, mLiveUid);
bundle.putString(Constants.LIVE_STREAM, mStream);
liveGiftDialogFragment.setArguments(bundle);
liveGiftDialogFragment.show(((LiveAudienceActivity) mContext).getSupportFragmentManager(), "LiveGiftDialogFragment");
break;
case CURRENTACTIVITY:
bundle.putString("url", event.getModel().activityUrl(mContext, liveBean.getUid()));
int show = TextUtils.isEmpty(event.getModel().getShowType()) ? 0 : Integer.parseInt(event.getModel().getShowType());
bundle.putInt("show_type", show);
LiveHDDialogFragment liveHDDialogFragment = new LiveHDDialogFragment();
liveHDDialogFragment.setArguments(bundle);
liveHDDialogFragment.show(((LiveAudienceActivity) mContext).getSupportFragmentManager(), "LiveHDDialogFragment");
break;
}

View File

@@ -1,30 +0,0 @@
package com.yunbao.live.event;
import com.yunbao.common.bean.BaseModel;
public class LiveAudienceEvent extends BaseModel {
private LiveAudienceType type;
public LiveAudienceType getType() {
return type;
}
public LiveAudienceEvent setType(LiveAudienceType type) {
this.type = type;
return this;
}
public enum LiveAudienceType {
SIDEBAR(1, "侧边栏"),
BOTTOMCOLLECTION(2, "底部合集");
private int type;
private String name;
LiveAudienceType(int type, String name) {
this.type = type;
this.name = name;
}
}
}

View File

@@ -32,7 +32,6 @@ import com.opensource.svgaplayer.SVGAVideoEntity;
import com.yunbao.common.CommonAppConfig;
import com.yunbao.common.Constants;
import com.yunbao.common.bean.MsgModel;
import com.yunbao.common.dialog.LiveTotalDialog;
import com.yunbao.common.event.MessageIMEvent;
import com.yunbao.common.glide.ImgLoader;
import com.yunbao.common.http.HttpCallback;
@@ -49,7 +48,7 @@ import com.yunbao.live.bean.LiveChatBean;
import com.yunbao.live.dialog.LiveHDDialogFragment;
import com.yunbao.live.dialog.LiveMicUserDialogFragment;
import com.yunbao.live.dialog.LivePromotionDialogFragment;
import com.yunbao.live.event.LiveAudienceEvent;
import com.yunbao.common.event.LiveAudienceEvent;
import com.yunbao.live.http.LiveHttpUtil;
import org.greenrobot.eventbus.EventBus;
@@ -75,6 +74,7 @@ public class LiveAudienceViewHolder extends AbsLiveViewHolder {
private TextView goToRomm;
private int icon = 0;
private String nobleName, nobleTtext;
private ImageView giftImage;
public LiveAudienceViewHolder(Context context, ViewGroup parentView) {
super(context, parentView);
@@ -129,7 +129,7 @@ public class LiveAudienceViewHolder extends AbsLiveViewHolder {
public void onError() {
Log.e("errqs", "errl");
}
},null);
}, null);
}
private void svga_new_user_double() {
@@ -146,7 +146,7 @@ public class LiveAudienceViewHolder extends AbsLiveViewHolder {
public void onError() {
Log.e("errqs", "errl");
}
},null);
}, null);
}
private void svga_new_user_follow() {
@@ -162,7 +162,7 @@ public class LiveAudienceViewHolder extends AbsLiveViewHolder {
public void onError() {
Log.e("errqs", "errl");
}
},null);
}, null);
}
@@ -180,6 +180,7 @@ public class LiveAudienceViewHolder extends AbsLiveViewHolder {
findViewById(R.id.btn_red_pack).setOnClickListener(this);
findViewById(R.id.btn_gift).setOnClickListener(this);
findViewById(R.id.btn_zg).setOnClickListener(this);
giftImage = (ImageView) findViewById(R.id.gift_image);
svga_new_user_gif = (SVGAImageView) findViewById(R.id.svga_new_user_gif);
svga_new_user_double = (SVGAImageView) findViewById(R.id.svga_new_user_double);
svga_new_user_follow = (SVGAImageView) findViewById(R.id.svga_new_user_follow);
@@ -303,6 +304,16 @@ public class LiveAudienceViewHolder extends AbsLiveViewHolder {
}
});
//底部礼物弹窗
ImgLoader.displayGif(mContext, R.mipmap.live_lw, giftImage);
ViewClicksAntiShake.clicksAntiShake(giftImage, new ViewClicksAntiShake.ViewClicksCallBack() {
@Override
public void onViewClicks() {
Bus.get().post(new LiveAudienceEvent()
.setType(LiveAudienceEvent.LiveAudienceType.GIFTPOPUP));
}
});
}
public static Handler handler = new Handler();
@@ -664,7 +675,7 @@ public class LiveAudienceViewHolder extends AbsLiveViewHolder {
public void onError() {
Log.e("errqs", "errl");
}
},null);
}, null);
}
}

View File

@@ -79,7 +79,7 @@ import com.yunbao.live.custom.TopGradual;
import com.yunbao.live.dialog.LiveFansMedalDialogFragment;
import com.yunbao.live.dialog.LiveHDDialogFragment;
import com.yunbao.live.dialog.LiveUserDialogFragment;
import com.yunbao.live.event.LiveAudienceEvent;
import com.yunbao.common.event.LiveAudienceEvent;
import com.yunbao.live.http.LiveHttpConsts;
import com.yunbao.live.http.LiveHttpUtil;
import com.yunbao.live.presenter.LiveDanmuPresenter;