新增获取联系方式的弹框新样式
This commit is contained in:
@@ -0,0 +1,154 @@
|
||||
package com.yunbao.live.dialog;
|
||||
|
||||
import static com.yunbao.common.utils.RouteUtil.PATH_COIN;
|
||||
|
||||
import android.app.Dialog;
|
||||
import android.content.Context;
|
||||
import android.text.Html;
|
||||
import android.text.Spanned;
|
||||
import android.widget.ImageView;
|
||||
import android.widget.TextView;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
|
||||
import com.alibaba.android.arouter.launcher.ARouter;
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import com.alibaba.fastjson.JSONArray;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.lxj.xpopup.XPopup;
|
||||
import com.yunbao.common.bean.LiveGiftBean;
|
||||
import com.yunbao.common.dialog.AbsDialogPopupWindow;
|
||||
import com.yunbao.common.glide.ImgLoader;
|
||||
import com.yunbao.common.http.HttpCallback;
|
||||
import com.yunbao.common.utils.DialogUitl;
|
||||
import com.yunbao.live.R;
|
||||
import com.yunbao.live.http.LiveHttpUtil;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
public class LiveContactDetailsSendGiftDialog extends AbsDialogPopupWindow {
|
||||
TextView title;
|
||||
TextView giftName;
|
||||
TextView diamond;
|
||||
ImageView giftIcon;
|
||||
|
||||
int giftId;
|
||||
String anchorName;
|
||||
private String mLiveUid;
|
||||
private String mStream;
|
||||
LiveGiftBean bean;
|
||||
|
||||
public LiveContactDetailsSendGiftDialog(@NonNull Context context) {
|
||||
super(context);
|
||||
}
|
||||
|
||||
public LiveContactDetailsSendGiftDialog setGiftId(int giftId) {
|
||||
this.giftId = giftId;
|
||||
return this;
|
||||
}
|
||||
|
||||
public LiveContactDetailsSendGiftDialog setLiveUid(String mLiveUid) {
|
||||
this.mLiveUid = mLiveUid;
|
||||
return this;
|
||||
}
|
||||
|
||||
public LiveContactDetailsSendGiftDialog setStream(String mStream) {
|
||||
this.mStream = mStream;
|
||||
return this;
|
||||
}
|
||||
|
||||
public LiveContactDetailsSendGiftDialog setAnchorName(String anchorName) {
|
||||
this.anchorName = anchorName;
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void buildDialog(XPopup.Builder builder) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public int bindLayoutId() {
|
||||
return R.layout.dialog_live_contact_details_gift;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void onCreate() {
|
||||
super.onCreate();
|
||||
findViewById(R.id.back).setOnClickListener(v -> dismiss());
|
||||
findViewById(R.id.send).setOnClickListener(v -> send());
|
||||
|
||||
title = findViewById(R.id.title);
|
||||
giftIcon = findViewById(R.id.gift_icon);
|
||||
giftName = findViewById(R.id.gift_name);
|
||||
diamond = findViewById(R.id.diamond);
|
||||
|
||||
initData();
|
||||
}
|
||||
|
||||
private void initData() {
|
||||
LiveHttpUtil.getNewGiftList(new HttpCallback() {
|
||||
@Override
|
||||
public void onSuccess(int code, String msg, String[] info) {
|
||||
if (code == 0 && info.length > 0) {
|
||||
JSONObject obj = JSON.parseObject(info[0]);
|
||||
JSONArray array = obj.getJSONArray("listarray");
|
||||
List<LiveGiftBean> list = new ArrayList<>();
|
||||
for (int i = 0; i < array.size(); i++) {
|
||||
list.addAll(JSONArray.parseArray(array.getJSONObject(i).getJSONArray("giftlist").toJSONString(), LiveGiftBean.class));
|
||||
}
|
||||
for (LiveGiftBean bean : list) {
|
||||
if (bean.getId() == giftId) {
|
||||
setData(bean);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onFinish() {
|
||||
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
private void setData(LiveGiftBean bean) {
|
||||
this.bean=bean;
|
||||
ImgLoader.display(mContext,bean.getIcon(),giftIcon);
|
||||
diamond.setText(bean.getPrice());
|
||||
giftName.setText(bean.getName());
|
||||
Spanned spanned = Html.fromHtml(
|
||||
"<font color='#5993FF'>"+mContext.getString(R.string.live_details_sned_gift_text1)+"</font>" +
|
||||
" <font color='#FFC300'>" + bean.getName() + "</font> " +
|
||||
"<font color='#5993FF'>"+mContext.getString(R.string.live_details_sned_gift_text2)+"</font>" +
|
||||
" <font color='#FFC300'>" + anchorName + "</font> " +
|
||||
"<font color='#5993FF'>"+mContext.getString(R.string.live_details_sned_gift_text3)+"</font>"
|
||||
);
|
||||
title.setText(spanned);
|
||||
}
|
||||
|
||||
private void send() {
|
||||
LiveHttpUtil.sendGift("0", mLiveUid, mStream, bean.getId(), "1", 1, new HttpCallback() {
|
||||
@Override
|
||||
public void onSuccess(int code, String msg, String[] info) {
|
||||
if (code == 1001 || code==1005) {
|
||||
new DialogUitl.Builder(mContext)
|
||||
.setView(R.layout.dialog_live_unfollow)
|
||||
.setConfirmString(mContext.getString(R.string.charge))
|
||||
.setContent(mContext.getString(R.string.insufficient_balance))
|
||||
.setClickCallback(new DialogUitl.SimpleCallback() {
|
||||
@Override
|
||||
public void onConfirmClick(Dialog dialog, String content) {
|
||||
LiveContactDetailsSendGiftDialog.this.dismiss();
|
||||
ARouter.getInstance().build(PATH_COIN).withInt("p", 0).navigation();
|
||||
}
|
||||
}).build().show();
|
||||
}else{
|
||||
dismiss();
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
@@ -147,6 +147,7 @@ import com.yunbao.live.bean.WishlistItemModel;
|
||||
import com.yunbao.live.custom.LiveLightView;
|
||||
import com.yunbao.live.custom.RightGradual;
|
||||
import com.yunbao.live.custom.TopGradual;
|
||||
import com.yunbao.live.dialog.LiveContactDetailsSendGiftDialog;
|
||||
import com.yunbao.live.dialog.LiveFaceUnityDialogFragment;
|
||||
import com.yunbao.live.dialog.LiveFansMedalDialogFragment;
|
||||
import com.yunbao.live.dialog.LiveGameDialogFragment;
|
||||
@@ -5073,17 +5074,13 @@ public class LiveRoomViewHolder extends AbsViewHolder implements View.OnClickLis
|
||||
.showDialog();
|
||||
return;
|
||||
}
|
||||
LiveGiftDialogFragment fragment = new LiveGiftDialogFragment();
|
||||
fragment.setOnDismissListener(dialog -> checkNewLetter()
|
||||
);
|
||||
fragment.setOnShowListener(dialog -> mHandler.postDelayed(loading::dismiss, 500));
|
||||
Bundle bundle = new Bundle();
|
||||
bundle.putString(Constants.LIVE_UID, mLiveUid);
|
||||
bundle.putString(Constants.LIVE_STREAM, mStream);
|
||||
bundle.putString(Constants.LIVE_WISH_GIFTID, data.getGiftId() + "");
|
||||
bundle.putBoolean("isContactGift", true);
|
||||
fragment.setArguments(bundle);
|
||||
fragment.show(((LiveAudienceActivity) mContext).getSupportFragmentManager(), "LiveGiftDialogFragment");
|
||||
new LiveContactDetailsSendGiftDialog(mContext)
|
||||
.setGiftId(data.getGiftId())
|
||||
.setAnchorName(mAnchorName)
|
||||
.setStream(mStream)
|
||||
.setLiveUid(mLiveUid)
|
||||
.showDialog();
|
||||
loading.dismiss();
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -5151,17 +5148,13 @@ public class LiveRoomViewHolder extends AbsViewHolder implements View.OnClickLis
|
||||
.showDialog();
|
||||
return;
|
||||
}
|
||||
LiveGiftDialogFragment fragment = new LiveGiftDialogFragment();
|
||||
fragment.setOnDismissListener(dialog -> checkNewLetter()
|
||||
);
|
||||
fragment.setOnShowListener(dialog -> mHandler.postDelayed(loading::dismiss, 500));
|
||||
Bundle bundle = new Bundle();
|
||||
bundle.putString(Constants.LIVE_UID, mLiveUid);
|
||||
bundle.putString(Constants.LIVE_STREAM, mStream);
|
||||
bundle.putString(Constants.LIVE_WISH_GIFTID, data.getGiftId() + "");
|
||||
bundle.putBoolean("isContactGift", true);
|
||||
fragment.setArguments(bundle);
|
||||
fragment.show(((LiveAudienceActivity) mContext).getSupportFragmentManager(), "LiveGiftDialogFragment");
|
||||
new LiveContactDetailsSendGiftDialog(mContext)
|
||||
.setGiftId(data.getGiftId())
|
||||
.setAnchorName(mAnchorName)
|
||||
.setStream(mStream)
|
||||
.setLiveUid(mLiveUid)
|
||||
.showDialog();
|
||||
loading.dismiss();
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
Reference in New Issue
Block a user