Merge remote-tracking branch 'origin/master'
This commit is contained in:
commit
fbe2980c49
@ -24,6 +24,9 @@ public class Constants {
|
||||
public static final String STREAM = "stream";
|
||||
public static final String LIMIT = "limit";
|
||||
public static final String UID = "uid";
|
||||
public static final String USER_NAME = "userName";//用户名
|
||||
public static final String USER_ICON = "userIcon";//用户头像
|
||||
|
||||
public static final String TIP = "tip";
|
||||
public static final String SHOW_INVITE = "showInvite";
|
||||
public static final String USER_BEAN = "userBean";
|
||||
@ -47,6 +50,7 @@ public class Constants {
|
||||
public static final String LIVE_CLASS_PREFIX = "liveClass_";
|
||||
public static final String LIVE_ADMIN_ROOM = "liveAdminRoom";
|
||||
public static final String LIVE_ANCHER_NAME = "ancherName";//主播名
|
||||
public static final String LIVE_ANCHER_ICON = "ancherIcon";//主播头像
|
||||
public static final String HAS_GAME = "hasGame";
|
||||
public static final String OPEN_FLASH = "openFlash";
|
||||
public static final String SHARE_QR_CODE_FILE = "shareQrCodeFile.png";
|
||||
|
@ -56,6 +56,7 @@ import com.yunbao.live.dialog.LiveGuardDialogFragment;
|
||||
import com.yunbao.live.dialog.LiveInputDialogFragment;
|
||||
import com.yunbao.live.dialog.LiveMoreDialogFragment;
|
||||
import com.yunbao.live.dialog.LiveNewGuardBuyDialogFragment;
|
||||
import com.yunbao.live.dialog.LiveNewGuardListDialogFragment;
|
||||
import com.yunbao.live.dialog.LiveRedPackListDialogFragment;
|
||||
import com.yunbao.live.dialog.LiveRedPackSendDialogFragment;
|
||||
import com.yunbao.live.dialog.LiveShareDialogFragment;
|
||||
@ -118,6 +119,7 @@ public abstract class LiveActivity extends AbsActivity implements SocketMessageL
|
||||
protected int mSocketUserType;//socket用户类型 30 普通用户 40 管理员 50 主播 60超管
|
||||
public static String mStream;
|
||||
protected String mAncherName;
|
||||
protected String mAncherIcon;
|
||||
public static String mLiveUid;
|
||||
protected String mDanmuPrice;//弹幕价格
|
||||
protected String mCoinName;//钻石名称
|
||||
@ -1251,6 +1253,18 @@ public abstract class LiveActivity extends AbsActivity implements SocketMessageL
|
||||
fragment.setArguments(bundle);
|
||||
fragment.show(getSupportFragmentManager(), "LiveGuardDialogFragment");
|
||||
}
|
||||
/**
|
||||
* 守护列表弹窗
|
||||
*/
|
||||
public void openNewGuardListWindow() {
|
||||
LiveNewGuardListDialogFragment fragment = new LiveNewGuardListDialogFragment();
|
||||
fragment.setLiveGuardInfo(mLiveGuardInfo);
|
||||
Bundle bundle = new Bundle();
|
||||
bundle.putString(Constants.LIVE_UID, mLiveUid);
|
||||
bundle.putBoolean(Constants.ANCHOR, mIsAnchor);
|
||||
fragment.setArguments(bundle);
|
||||
fragment.show(getSupportFragmentManager(), "LiveGuardDialogFragment");
|
||||
}
|
||||
|
||||
/**
|
||||
* 打開粉絲團
|
||||
@ -1315,6 +1329,8 @@ public abstract class LiveActivity extends AbsActivity implements SocketMessageL
|
||||
bundle.putString(Constants.LIVE_UID, mLiveUid);
|
||||
bundle.putString(Constants.LIVE_ANCHER_NAME, mAncherName);
|
||||
bundle.putString(Constants.STREAM, mStream);
|
||||
bundle.putString(Constants.LIVE_ANCHER_ICON,mAncherIcon);
|
||||
bundle.putString(Constants.USER_ICON,CommonAppConfig.getInstance().getUserBean().getAvatar());
|
||||
fragment.setArguments(bundle);
|
||||
fragment.show(getSupportFragmentManager(), "LiveGuardBuyDialogFragment");
|
||||
}
|
||||
|
@ -275,6 +275,7 @@ public class LiveAudienceActivity extends LiveActivity {
|
||||
mLiveUid = mLiveBean.getUid();
|
||||
mStream = mLiveBean.getStream();
|
||||
mAncherName = liveBean.getUserNiceName();
|
||||
mAncherIcon = liveBean.getAvatar();
|
||||
|
||||
Log.e("收到socket--->", "mLiveUid--------------------------->" + mLiveUid);
|
||||
//加载当前页面数据
|
||||
@ -555,6 +556,7 @@ public class LiveAudienceActivity extends LiveActivity {
|
||||
mLiveUid = liveBean.getUid();
|
||||
mStream = liveBean.getStream();
|
||||
mAncherName = liveBean.getUserNiceName();
|
||||
mAncherIcon = liveBean.getAvatar();
|
||||
manager.onAdd(liveBean, mLiveType, mLiveTypeVal, mLiveSDK);
|
||||
|
||||
}
|
||||
|
@ -2,9 +2,11 @@ package com.yunbao.live.adapter;
|
||||
|
||||
import android.content.Context;
|
||||
import android.graphics.drawable.Drawable;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.core.content.ContextCompat;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
|
||||
import android.text.Html;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
@ -35,9 +37,11 @@ public class GuardAdapter extends RefreshAdapter<GuardUserBean> {
|
||||
private Drawable mGuardDrawable0;
|
||||
private Drawable mGuardDrawable1;
|
||||
private Drawable mGuardDrawable2;
|
||||
private boolean isShowTitle;
|
||||
|
||||
public GuardAdapter(Context context, boolean dialog) {
|
||||
public GuardAdapter(Context context, boolean dialog, boolean isShowTitle) {
|
||||
super(context);
|
||||
this.isShowTitle = isShowTitle;
|
||||
mDialog = dialog;
|
||||
mVotesName = CommonAppConfig.getInstance().getVotesName();
|
||||
mWeekContributeString = WordUtil.getString(R.string.guard_week_con);
|
||||
@ -46,9 +50,15 @@ public class GuardAdapter extends RefreshAdapter<GuardUserBean> {
|
||||
mGuardDrawable2 = ContextCompat.getDrawable(context, R.mipmap.icon_guard_type_2);
|
||||
}
|
||||
|
||||
public GuardAdapter(Context context, boolean dialog) {
|
||||
this(context, dialog, true);
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getItemViewType(int position) {
|
||||
if(!isShowTitle){
|
||||
return NORMAL;
|
||||
}
|
||||
if (position == 0) {
|
||||
return HEAD;
|
||||
}
|
||||
@ -105,7 +115,7 @@ public class GuardAdapter extends RefreshAdapter<GuardUserBean> {
|
||||
if (levelBean != null) {
|
||||
ImgLoader.display(mContext, levelBean.getThumb(), mLevel);
|
||||
}
|
||||
mVotes.setText(Html.fromHtml( " <font color='#ffdd00'>" + bean.getContribute() + "</font> " + mVotesName));
|
||||
mVotes.setText(Html.fromHtml(" <font color='#ffdd00'>" + bean.getContribute() + "</font> " + mVotesName));
|
||||
}
|
||||
}
|
||||
|
||||
@ -142,7 +152,7 @@ public class GuardAdapter extends RefreshAdapter<GuardUserBean> {
|
||||
mIcon.setImageDrawable(mGuardDrawable0);
|
||||
} else if (bean.getType() == Constants.GUARD_TYPE_MONTH) {
|
||||
mIcon.setImageDrawable(mGuardDrawable1);
|
||||
} else if (bean.getType() == Constants.GUARD_TYPE_YEAR){
|
||||
} else if (bean.getType() == Constants.GUARD_TYPE_YEAR) {
|
||||
mIcon.setImageDrawable(mGuardDrawable2);
|
||||
}
|
||||
}
|
||||
|
@ -8,6 +8,9 @@ import android.view.Gravity;
|
||||
import android.view.View;
|
||||
import android.view.Window;
|
||||
import android.view.WindowManager;
|
||||
import android.widget.Button;
|
||||
import android.widget.LinearLayout;
|
||||
import android.widget.RelativeLayout;
|
||||
import android.widget.TextView;
|
||||
|
||||
import androidx.annotation.Nullable;
|
||||
@ -16,10 +19,13 @@ import androidx.recyclerview.widget.RecyclerView;
|
||||
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.makeramen.roundedimageview.RoundedImageView;
|
||||
import com.opensource.svgaplayer.SVGAImageView;
|
||||
import com.yunbao.common.CommonAppConfig;
|
||||
import com.yunbao.common.Constants;
|
||||
import com.yunbao.common.bean.UserBean;
|
||||
import com.yunbao.common.dialog.AbsDialogFragment;
|
||||
import com.yunbao.common.glide.ImgLoader;
|
||||
import com.yunbao.common.http.HttpCallback;
|
||||
import com.yunbao.common.utils.DialogUitl;
|
||||
import com.yunbao.common.utils.RouteUtil;
|
||||
@ -48,17 +54,27 @@ public class LiveNewGuardBuyDialogFragment extends AbsDialogFragment implements
|
||||
|
||||
private RecyclerView mRights;//权益列表
|
||||
private RecyclerView mBuys;//购买列表
|
||||
private RoundedImageView userIcon, userIconOne, userIconTwo;
|
||||
private SVGAImageView iconCover;
|
||||
private TextView anchorName;
|
||||
private TextView guardCoin2;
|
||||
private TextView guardBuy;
|
||||
private TextView guard_tips;
|
||||
private Button submit;
|
||||
private LinearLayout buy2;
|
||||
private RelativeLayout buy1;
|
||||
private TextView mCoin;
|
||||
private String mCoinName;
|
||||
private TextView mCoinNameTextView;
|
||||
private View mBtnBuy;
|
||||
private List<GuardRightBean> mRightList=new ArrayList<>();//权限列表
|
||||
private List<GuardRightBean> mRightList = new ArrayList<>();//权限列表
|
||||
private List<GuardBuyBean> mBuyList;//商品列表
|
||||
private long mCoinVal;//余额
|
||||
private String mLiveUid;
|
||||
private String mStream;
|
||||
private String mAncherName;
|
||||
private String mAncherIcon;
|
||||
private String mUserIcon;
|
||||
private LiveGuardInfo mLiveGuardInfo;
|
||||
private GuardBuyBean mTargetBuyBean;
|
||||
|
||||
@ -105,11 +121,26 @@ public class LiveNewGuardBuyDialogFragment extends AbsDialogFragment implements
|
||||
mRights = mRootView.findViewById(R.id.guard_rights);
|
||||
mBuys = mRootView.findViewById(R.id.guard_buys);
|
||||
anchorName = mRootView.findViewById(R.id.guard_anchor_name);
|
||||
userIcon = mRootView.findViewById(R.id.guard_imageView);
|
||||
userIconOne = mRootView.findViewById(R.id.guard_imageView_one);
|
||||
userIconTwo = mRootView.findViewById(R.id.guard_imageView_two);
|
||||
iconCover = mRootView.findViewById(R.id.gift_svga);
|
||||
guardCoin2 = mRootView.findViewById(R.id.guard_coin2);
|
||||
guardBuy = mRootView.findViewById(R.id.guard_buy);
|
||||
submit = mRootView.findViewById(R.id.guard_submit);
|
||||
buy1 = mRootView.findViewById(R.id.buy1);
|
||||
buy2 = mRootView.findViewById(R.id.buy2);
|
||||
guard_tips = mRootView.findViewById(R.id.guard_textView2);
|
||||
|
||||
iconCover.setImageResource(R.drawable.guardian_img_wings);
|
||||
|
||||
mBtnBuy.setOnClickListener(this);
|
||||
submit.setOnClickListener(this);
|
||||
guardBuy.setOnClickListener(this);
|
||||
mRights.setHasFixedSize(true);
|
||||
mRights.setLayoutManager(new LinearLayoutManager(mContext, LinearLayoutManager.VERTICAL, false));
|
||||
mBuys.setHasFixedSize(true);
|
||||
mBuys.setLayoutManager(new LinearLayoutManager(mContext, LinearLayoutManager.HORIZONTAL, false){
|
||||
mBuys.setLayoutManager(new LinearLayoutManager(mContext, LinearLayoutManager.HORIZONTAL, false) {
|
||||
@Override
|
||||
public boolean canScrollHorizontally() {//购买列表禁止滑动
|
||||
return false;
|
||||
@ -127,10 +158,13 @@ public class LiveNewGuardBuyDialogFragment extends AbsDialogFragment implements
|
||||
if (bundle != null) {
|
||||
mLiveUid = bundle.getString(Constants.LIVE_UID);
|
||||
mStream = bundle.getString(Constants.STREAM);
|
||||
mAncherName=bundle.getString(Constants.LIVE_ANCHER_NAME);
|
||||
mAncherName = bundle.getString(Constants.LIVE_ANCHER_NAME);
|
||||
mAncherIcon = bundle.getString(Constants.LIVE_ANCHER_ICON);
|
||||
mUserIcon = bundle.getString(Constants.USER_ICON);
|
||||
String coinName = WordUtil.getString(R.string.diamond);
|
||||
mCoinName = coinName;
|
||||
mCoinNameTextView.setText(WordUtil.getString(R.string.guard_my) + coinName + ":");
|
||||
// mCoinNameTextView.setText(WordUtil.getString(R.string.guard_my) + coinName + ":");
|
||||
mCoinNameTextView.setText("快为您喜欢的主播开通守护吧");
|
||||
anchorName.setText(String.format("成爲%s的守護", mAncherName));
|
||||
}
|
||||
LiveHttpUtil.getGuardBuyList(new HttpCallback() {
|
||||
@ -146,6 +180,7 @@ public class LiveNewGuardBuyDialogFragment extends AbsDialogFragment implements
|
||||
e.printStackTrace();
|
||||
}
|
||||
mCoin.setText(String.valueOf(mCoinVal));
|
||||
guardCoin2.setText(WordUtil.getString(R.string.guard_my) + mCoinName + ":" + mCoinVal);
|
||||
buyItemsAdapter.setItems(mBuyList);
|
||||
mGuardRightAdapter.setList(mRightList);
|
||||
buyItemsAdapter.notifyDataSetChanged();
|
||||
@ -157,13 +192,49 @@ public class LiveNewGuardBuyDialogFragment extends AbsDialogFragment implements
|
||||
}
|
||||
}
|
||||
});
|
||||
initView();
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据守护类型初始化不同的底部布局
|
||||
*/
|
||||
private void initView() {
|
||||
int guardType = mLiveGuardInfo.getMyGuardType();
|
||||
if (guardType == Constants.GUARD_TYPE_NONE) {
|
||||
iconCover.setBackgroundResource(R.drawable.guardian_img_wings);
|
||||
buy1.setVisibility(View.VISIBLE);
|
||||
buy2.setVisibility(View.GONE);
|
||||
} else {
|
||||
buy2.setVisibility(View.VISIBLE);
|
||||
buy1.setVisibility(View.GONE);
|
||||
userIconOne.setVisibility(View.VISIBLE);
|
||||
userIconTwo.setVisibility(View.VISIBLE);
|
||||
iconCover.setImageResource(R.drawable.guardian_img_two);
|
||||
ImgLoader.display(mContext, mAncherIcon, userIconOne);
|
||||
ImgLoader.display(mContext, mUserIcon, userIconTwo);
|
||||
String title = "";
|
||||
switch (guardType) {
|
||||
case Constants.GUARD_TYPE_DAY:
|
||||
title = "您是當前主播的周守護";
|
||||
break;
|
||||
case Constants.GUARD_TYPE_MONTH:
|
||||
title = "您是當前主播的月守護";
|
||||
break;
|
||||
case Constants.GUARD_TYPE_YEAR:
|
||||
title = "您是當前主播的年守護";
|
||||
break;
|
||||
}
|
||||
anchorName.setText(title);
|
||||
guard_tips.setText("守護日期截止到:"+ mLiveGuardInfo.getMyGuardEndTime());
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
private void refreshList(int index) {
|
||||
if (!mRightList.isEmpty()) {
|
||||
GuardBuyBean guardBuyBean = mBuyList.get(index - 1);
|
||||
mTargetBuyBean=guardBuyBean;
|
||||
mTargetBuyBean = guardBuyBean;
|
||||
for (GuardRightBean bean : mRightList) {
|
||||
bean.setChecked(false);
|
||||
}
|
||||
@ -177,18 +248,15 @@ public class LiveNewGuardBuyDialogFragment extends AbsDialogFragment implements
|
||||
}
|
||||
|
||||
|
||||
|
||||
@Override
|
||||
public void onClick(View view) {
|
||||
int i = view.getId();
|
||||
if (i == R.id.guard_btn_buy) {
|
||||
if (i == R.id.guard_btn_buy || i == R.id.guard_submit) {
|
||||
clickBuyGuard();
|
||||
} else if (i == R.id.guard_buy) {
|
||||
forwardMyCoin();
|
||||
|
||||
}
|
||||
// else if (i == R.id.coin) {
|
||||
// forwardMyCoin();
|
||||
//
|
||||
// }
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -0,0 +1,201 @@
|
||||
package com.yunbao.live.dialog;
|
||||
|
||||
import android.os.Bundle;
|
||||
import android.view.Gravity;
|
||||
import android.view.View;
|
||||
import android.view.Window;
|
||||
import android.view.WindowManager;
|
||||
import android.widget.ImageView;
|
||||
import android.widget.LinearLayout;
|
||||
import android.widget.TextView;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.annotation.Nullable;
|
||||
import androidx.constraintlayout.widget.ConstraintLayout;
|
||||
import androidx.fragment.app.FragmentTransaction;
|
||||
import androidx.recyclerview.widget.LinearLayoutManager;
|
||||
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import com.opensource.svgaplayer.SVGAImageView;
|
||||
import com.yunbao.common.CommonAppConfig;
|
||||
import com.yunbao.common.Constants;
|
||||
import com.yunbao.common.adapter.RefreshAdapter;
|
||||
import com.yunbao.common.bean.LevelBean;
|
||||
import com.yunbao.common.custom.CommonRefreshView;
|
||||
import com.yunbao.common.dialog.AbsDialogFragment;
|
||||
import com.yunbao.common.glide.ImgLoader;
|
||||
import com.yunbao.common.http.HttpCallback;
|
||||
import com.yunbao.common.utils.CommonIconUtil;
|
||||
import com.yunbao.common.utils.WordUtil;
|
||||
import com.yunbao.live.R;
|
||||
import com.yunbao.live.activity.LiveActivity;
|
||||
import com.yunbao.live.adapter.GuardAdapter;
|
||||
import com.yunbao.live.bean.GuardUserBean;
|
||||
import com.yunbao.live.bean.LiveGuardInfo;
|
||||
import com.yunbao.live.http.LiveHttpUtil;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 新版守护列表
|
||||
*/
|
||||
public class LiveNewGuardListDialogFragment extends AbsDialogFragment implements View.OnClickListener {
|
||||
private ImageView guardIcon, userSex, userLevel;
|
||||
private ConstraintLayout mRootLayout;
|
||||
private CommonRefreshView mRefreshView;
|
||||
private TextView mBtnBuy, userName, userGuard,tip1, tip2;
|
||||
private SVGAImageView giftSvga;
|
||||
private LinearLayout userLayout;
|
||||
|
||||
private GuardAdapter mGuardAdapter;
|
||||
private LiveGuardInfo mLiveGuardInfo;
|
||||
private String mLiveUid;
|
||||
private boolean mIsAnchor;//是否是主播
|
||||
|
||||
@Override
|
||||
protected int getLayoutId() {
|
||||
return R.layout.dialog_new_guard_list;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected int getDialogStyle() {
|
||||
return R.style.dialog2;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected boolean canCancel() {
|
||||
return true;
|
||||
}
|
||||
|
||||
public void setLiveGuardInfo(LiveGuardInfo info) {
|
||||
mLiveGuardInfo = info;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void setWindowAttributes(Window window) {
|
||||
window.setWindowAnimations(R.style.bottomToTopAnim);
|
||||
WindowManager.LayoutParams params = window.getAttributes();
|
||||
params.width = WindowManager.LayoutParams.MATCH_PARENT;
|
||||
params.height = WindowManager.LayoutParams.WRAP_CONTENT;
|
||||
params.gravity = Gravity.BOTTOM;
|
||||
window.setAttributes(params);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onActivityCreated(@Nullable Bundle savedInstanceState) {
|
||||
super.onActivityCreated(savedInstanceState);
|
||||
Bundle bundle = getArguments();
|
||||
if (bundle == null) {
|
||||
return;
|
||||
}
|
||||
mIsAnchor = bundle.getBoolean(Constants.ANCHOR, false);
|
||||
mLiveUid = bundle.getString(Constants.LIVE_UID);
|
||||
guardIcon = mRootView.findViewById(R.id.guard_imageView);
|
||||
mRootLayout = mRootView.findViewById(R.id.guard_constraintLayout);
|
||||
mBtnBuy = mRootView.findViewById(R.id.guard_btn_buy);
|
||||
giftSvga = mRootView.findViewById(R.id.gift_svga);
|
||||
mRefreshView = mRootView.findViewById(R.id.refreshView);
|
||||
userName = mRootView.findViewById(R.id.list_guard_list_user_name);
|
||||
userGuard = mRootView.findViewById(R.id.list_guard_list_user_guard);
|
||||
userLevel = mRootView.findViewById(R.id.list_guard_list_user_level);
|
||||
userSex = mRootView.findViewById(R.id.list_guard_list_user_sex);
|
||||
userLayout = mRootView.findViewById(R.id.guard_linearLayout);
|
||||
tip1 = mRootView.findViewById(R.id.guard_tip1);
|
||||
tip2 = mRootView.findViewById(R.id.guard_tip2);
|
||||
mBtnBuy.setOnClickListener(this);
|
||||
mBtnBuy.setEnabled(true);
|
||||
mBtnBuy.setText(R.string.guard_buy_2);
|
||||
initView();
|
||||
}
|
||||
|
||||
private void initView() {
|
||||
mRefreshView.setEmptyLayoutId(mIsAnchor ? R.layout.view_no_data_guard_anc : R.layout.view_no_data_guard_aud);
|
||||
mRefreshView.setLayoutManager(new LinearLayoutManager(mContext, LinearLayoutManager.VERTICAL, false));
|
||||
mRefreshView.setDataHelper(new CommonRefreshView.DataHelper<GuardUserBean>() {
|
||||
@Override
|
||||
public RefreshAdapter<GuardUserBean> getAdapter() {
|
||||
if (mGuardAdapter == null) {
|
||||
mGuardAdapter = new GuardAdapter(mContext, true, false);
|
||||
}
|
||||
return mGuardAdapter;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void loadData(int p, HttpCallback callback) {
|
||||
LiveHttpUtil.getGuardList(mLiveUid, p, callback);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<GuardUserBean> processData(String[] info) {
|
||||
List<GuardUserBean> list = JSON.parseArray(Arrays.toString(info), GuardUserBean.class);
|
||||
if (list.isEmpty()) {
|
||||
userLayout.setVisibility(View.INVISIBLE);
|
||||
}else {
|
||||
GuardUserBean bean = list.get(0);
|
||||
giftSvga.setImageResource(R.drawable.guardian_img_wings_p);
|
||||
ImgLoader.display(mContext, bean.getAvatar(), guardIcon);
|
||||
guardIcon.setVisibility(View.VISIBLE);
|
||||
userName.setText(bean.getUserNiceName());
|
||||
String guardString = WordUtil.getString(R.string.guard_week_con);
|
||||
userGuard.setText(guardString + " " + bean.getContribute());
|
||||
userSex.setImageResource(CommonIconUtil.getSexIcon(bean.getSex()));
|
||||
LevelBean levelBean = CommonAppConfig.getInstance().getLevel(bean.getLevel());
|
||||
if (levelBean != null) {
|
||||
ImgLoader.display(mContext, levelBean.getThumb(), userLevel);
|
||||
}
|
||||
}
|
||||
if (mLiveGuardInfo != null) {
|
||||
int guardType = mLiveGuardInfo.getMyGuardType();
|
||||
if (guardType == Constants.GUARD_TYPE_NONE) {
|
||||
tip1.setText(R.string.guard_tip_0);
|
||||
} else if (guardType == Constants.GUARD_TYPE_DAY) {
|
||||
tip1.setText(WordUtil.getString(R.string.guard_tip_day) + mLiveGuardInfo.getMyGuardEndTime());
|
||||
mBtnBuy.setText(R.string.guard_buy_3);
|
||||
} else if (guardType == Constants.GUARD_TYPE_MONTH) {
|
||||
tip1.setText(WordUtil.getString(R.string.guard_tip_1) + mLiveGuardInfo.getMyGuardEndTime());
|
||||
mBtnBuy.setText(R.string.guard_buy_3);
|
||||
} else if (guardType == Constants.GUARD_TYPE_YEAR) {
|
||||
tip1.setText(WordUtil.getString(R.string.guard_tip_2) + mLiveGuardInfo.getMyGuardEndTime());
|
||||
mBtnBuy.setText(R.string.guard_buy_3);
|
||||
}
|
||||
}
|
||||
return list;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onRefreshSuccess(List<GuardUserBean> list, int listCount) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onRefreshFailure() {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onLoadMoreSuccess(List<GuardUserBean> loadItemList, int loadItemCount) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onLoadMoreFailure() {
|
||||
|
||||
}
|
||||
});
|
||||
mRefreshView.initData();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onClick(View view) {
|
||||
dismiss();
|
||||
((LiveActivity) mContext).openNewBuyGuardWindow();
|
||||
}
|
||||
|
||||
@Override
|
||||
public int show(@NonNull FragmentTransaction transaction, @Nullable String tag) {
|
||||
int show = super.show(transaction, tag);
|
||||
initView();
|
||||
return show;
|
||||
}
|
||||
}
|
@ -143,7 +143,7 @@ public class LiveUserMoreDialogFragment extends AbsDialogFragment implements Vie
|
||||
((LiveActivity) mContext).openLuckGiftTip();
|
||||
} else if (Tips.equals("2")) {
|
||||
dismiss();
|
||||
((LiveActivity) mContext).openGuardListWindow();
|
||||
((LiveActivity) mContext).openNewGuardListWindow();
|
||||
} else if (Tips.equals("3")) {
|
||||
dismiss();
|
||||
((LiveActivity) mContext).openFansWindow();
|
||||
|
@ -3,6 +3,7 @@ package com.yunbao.live.views;
|
||||
import android.app.Activity;
|
||||
import android.app.Dialog;
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.graphics.Outline;
|
||||
import android.os.Bundle;
|
||||
import android.os.Handler;
|
||||
@ -111,6 +112,7 @@ import java.net.MalformedURLException;
|
||||
import java.net.URL;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Random;
|
||||
|
||||
import pl.droidsonroids.gif.GifImageView;
|
||||
|
||||
@ -851,6 +853,8 @@ public class LiveRoomViewHolder extends AbsViewHolder implements View.OnClickLis
|
||||
}
|
||||
});
|
||||
loadWishlistData();
|
||||
//打开活动窗口
|
||||
ViewClicksAntiShake.clicksAntiShake(wishListLayout, () -> mContext.startActivity(new Intent(mContext, ZhuangBanActivity.class).putExtra("url", "")));
|
||||
//打招呼消息
|
||||
fastMsgRecyclerView = (RecyclerView) findViewById(R.id.room_fast_msg);
|
||||
fastMsgRecyclerView.setLayoutManager(new LinearLayoutManager(mContext, LinearLayoutManager.HORIZONTAL, false));
|
||||
@ -859,8 +863,9 @@ public class LiveRoomViewHolder extends AbsViewHolder implements View.OnClickLis
|
||||
fastMessageRecyclerViewAdapter.setMessageListener(msg -> {
|
||||
//点击的消息发送出去
|
||||
((LiveActivity) mContext).sendChatMessage(msg);
|
||||
fastMsgRecyclerView.setVisibility(View.GONE);
|
||||
});
|
||||
fastMsgRecyclerView.setItemAnimator(new DefaultItemAnimator());
|
||||
// fastMsgRecyclerView.setItemAnimator(new DefaultItemAnimator());
|
||||
}
|
||||
|
||||
private void showBanner2() {
|
||||
@ -1058,8 +1063,31 @@ public class LiveRoomViewHolder extends AbsViewHolder implements View.OnClickLis
|
||||
}
|
||||
wishListFlipper.startFlipping();
|
||||
});
|
||||
|
||||
|
||||
}
|
||||
/**
|
||||
* 初始化小时榜。
|
||||
* 等待接口
|
||||
* TextView得独立出来用来替换数字
|
||||
*/
|
||||
protected void initHourRankList(){
|
||||
((Activity)mContext).runOnUiThread(()->{
|
||||
ViewFlipper flipper= (ViewFlipper) findViewById(R.id.hour_rank_list);
|
||||
for (int i = 0; i < 2; i++) {
|
||||
LinearLayout.LayoutParams params=new LinearLayout.LayoutParams(DpUtil.dp2px(44),DpUtil.dp2px(16));
|
||||
View wish = LayoutInflater.from(mContext).inflate(R.layout.view_wish_list, null);
|
||||
ImageView wishPic = wish.findViewById(R.id.wish_pic);
|
||||
TextView wishIndex = wish.findViewById(R.id.wish_index);
|
||||
if(i==0) {
|
||||
wishPic.setImageResource(R.drawable.live_tags_hot);
|
||||
}else{
|
||||
wishPic.setImageResource(R.drawable.live_tags_hour_list);
|
||||
}
|
||||
wishPic.setLayoutParams(params);
|
||||
wishIndex.setText(new Random().nextInt(5000)+"");
|
||||
flipper.addView(wish);
|
||||
}
|
||||
flipper.startFlipping();
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
@ -1492,7 +1520,7 @@ public class LiveRoomViewHolder extends AbsViewHolder implements View.OnClickLis
|
||||
//直播间 粉丝排行榜
|
||||
openMedalRankWindow();
|
||||
} else if (i == R.id.btn_guard) {
|
||||
((LiveActivity) mContext).openGuardListWindow();
|
||||
((LiveActivity) mContext).openNewGuardListWindow();
|
||||
} else if (i == R.id.btn_red_pack) {
|
||||
((LiveActivity) mContext).openRedPackListWindow();
|
||||
|
||||
@ -1511,8 +1539,8 @@ public class LiveRoomViewHolder extends AbsViewHolder implements View.OnClickLis
|
||||
} else if (i == R.id.ft_hot_add) {
|
||||
((LiveActivity) mContext).openHotListWindow(1);
|
||||
} else if (i == R.id.user_guard) {
|
||||
// ((LiveActivity) mContext).openUserMoreListWindow(2, true);
|
||||
((LiveActivity) mContext).openGuardListWindow();
|
||||
// ((LiveActivity) mContext).openUserMoreListWindow(2, true);
|
||||
((LiveActivity) mContext).openNewGuardListWindow();
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -267,6 +267,7 @@ public class PortraitLiveManager implements LivePlayListener, SocketMessageListe
|
||||
enterRoom();
|
||||
}
|
||||
});
|
||||
mLiveRoomViewHolder.initHourRankList();
|
||||
}
|
||||
|
||||
@Override
|
||||
|
9
live/src/main/res/drawable/bg_hour_rank_list.xml
Normal file
9
live/src/main/res/drawable/bg_hour_rank_list.xml
Normal file
@ -0,0 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<selector xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<item android:width="96dp" android:height="20dp">
|
||||
<shape android:shape="rectangle">
|
||||
<gradient android:type="linear" android:useLevel="true" android:startColor="#fffd4444" android:endColor="#ffff673c" android:angle="90" />
|
||||
<corners android:radius="10dp" />
|
||||
</shape>
|
||||
</item>
|
||||
</selector>
|
9
live/src/main/res/drawable/bg_new_guard_but.xml
Normal file
9
live/src/main/res/drawable/bg_new_guard_but.xml
Normal file
@ -0,0 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<selector xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<item android:width="267dp" android:height="42dp">
|
||||
<shape android:shape="rectangle">
|
||||
<gradient android:type="linear" android:useLevel="true" android:startColor="#ffa98cfd" android:endColor="#ff9d7afd" android:angle="90" />
|
||||
<corners android:radius="21dp" />
|
||||
</shape>
|
||||
</item>
|
||||
</selector>
|
BIN
live/src/main/res/drawable/guardian_img_two.png
Normal file
BIN
live/src/main/res/drawable/guardian_img_two.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 228 KiB |
BIN
live/src/main/res/drawable/guardian_img_wings_p.png
Normal file
BIN
live/src/main/res/drawable/guardian_img_wings_p.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 222 KiB |
BIN
live/src/main/res/drawable/icon_top_up.png
Normal file
BIN
live/src/main/res/drawable/icon_top_up.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 430 B |
BIN
live/src/main/res/drawable/live_icon_right_more.png
Normal file
BIN
live/src/main/res/drawable/live_icon_right_more.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 343 B |
BIN
live/src/main/res/drawable/live_tags_hot.png
Normal file
BIN
live/src/main/res/drawable/live_tags_hot.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 8.4 KiB |
BIN
live/src/main/res/drawable/live_tags_hour_list.png
Normal file
BIN
live/src/main/res/drawable/live_tags_hour_list.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 10 KiB |
@ -56,11 +56,10 @@
|
||||
android:layout_height="match_parent"
|
||||
android:layout_marginLeft="10dp"
|
||||
android:layout_toLeftOf="@id/btn_buy"
|
||||
android:background="#161616"
|
||||
android:gravity="center_vertical"
|
||||
android:textColor="@color/gray1"
|
||||
android:textSize="12sp"
|
||||
android:background="#161616"
|
||||
/>
|
||||
android:textSize="12sp" />
|
||||
|
||||
</RelativeLayout>
|
||||
|
||||
|
@ -118,19 +118,21 @@
|
||||
<RelativeLayout
|
||||
android:id="@+id/guard_relativeLayout"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="77dp"
|
||||
android:layout_marginTop="-20dp"
|
||||
android:layout_height="90dp"
|
||||
android:layout_marginTop="-30dp"
|
||||
android:background="@drawable/img_guard_bottom"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@+id/guard_constraintLayout">
|
||||
|
||||
<RelativeLayout
|
||||
android:id="@+id/buy1"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:layout_marginTop="25dp"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent">
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
tools:visibility="gone">
|
||||
|
||||
|
||||
<TextView
|
||||
@ -139,7 +141,7 @@
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_centerVertical="true"
|
||||
android:layout_marginLeft="10dp"
|
||||
android:textColor="@color/textColor2"
|
||||
android:textColor="#9E7CFD"
|
||||
android:textSize="14sp" />
|
||||
|
||||
<TextView
|
||||
@ -151,7 +153,8 @@
|
||||
android:layout_toRightOf="@id/guard_coin_name"
|
||||
android:drawablePadding="4dp"
|
||||
android:textColor="@color/global"
|
||||
android:textSize="14sp" />
|
||||
android:textSize="14sp"
|
||||
android:visibility="gone" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/guard_btn_buy"
|
||||
@ -167,18 +170,123 @@
|
||||
android:textColor="@color/white"
|
||||
android:textSize="14sp" />
|
||||
</RelativeLayout>
|
||||
|
||||
<LinearLayout
|
||||
android:id="@+id/buy2"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="20dp"
|
||||
android:gravity="center"
|
||||
android:orientation="vertical"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
tools:visibility="gone">
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:layout_marginTop="6dp"
|
||||
android:gravity="center"
|
||||
android:orientation="horizontal">
|
||||
|
||||
<TextView
|
||||
android:id="@+id/guard_coin2"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="0"
|
||||
android:textColor="#9F9F9F"
|
||||
android:textSize="12sp" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/guard_buy"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="14dp"
|
||||
android:text="充值"
|
||||
android:textColor="#F7B500"
|
||||
android:textSize="12sp" />
|
||||
|
||||
<ImageView
|
||||
android:layout_width="4dp"
|
||||
android:layout_height="8dp"
|
||||
android:layout_marginStart="4dp"
|
||||
android:src="@drawable/icon_top_up" />
|
||||
</LinearLayout>
|
||||
|
||||
<Button
|
||||
android:id="@+id/guard_submit"
|
||||
android:layout_width="267dp"
|
||||
android:layout_height="42dp"
|
||||
android:layout_marginTop="2dp"
|
||||
android:background="@drawable/bg_new_guard_but"
|
||||
android:text="繼續守護"
|
||||
android:textColor="#FFFFFF"
|
||||
android:textSize="16sp" />
|
||||
</LinearLayout>
|
||||
</RelativeLayout>
|
||||
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/guard_imageView"
|
||||
<RelativeLayout
|
||||
android:layout_width="243dp"
|
||||
android:layout_height="117dp"
|
||||
android:layout_above="@id/guard_rootView"
|
||||
android:layout_centerHorizontal="true"
|
||||
android:layout_gravity="center"
|
||||
android:layout_marginBottom="-102dp"
|
||||
android:gravity="center"
|
||||
android:scaleType="centerCrop"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
app:srcCompat="@drawable/guardian_img_wings" />
|
||||
app:layout_constraintTop_toTopOf="parent">
|
||||
|
||||
|
||||
<com.makeramen.roundedimageview.RoundedImageView
|
||||
android:id="@+id/guard_imageView"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="58dp"
|
||||
android:layout_centerHorizontal="true"
|
||||
android:layout_marginTop="30dp"
|
||||
android:scaleType="centerCrop"
|
||||
android:src="@drawable/guardian_img_wings"
|
||||
android:visibility="invisible"
|
||||
app:riv_oval="true" />
|
||||
|
||||
<com.makeramen.roundedimageview.RoundedImageView
|
||||
android:id="@+id/guard_imageView_two"
|
||||
android:layout_width="65dp"
|
||||
android:layout_height="65dp"
|
||||
android:layout_centerHorizontal="true"
|
||||
android:layout_marginStart="-5dp"
|
||||
android:layout_marginTop="25dp"
|
||||
android:layout_toEndOf="@+id/guard_imageView"
|
||||
android:scaleType="centerCrop"
|
||||
android:src="@drawable/guardian_img_wings"
|
||||
android:visibility="invisible"
|
||||
app:riv_oval="true" />
|
||||
|
||||
<com.makeramen.roundedimageview.RoundedImageView
|
||||
android:id="@+id/guard_imageView_one"
|
||||
android:layout_width="65dp"
|
||||
android:layout_height="65dp"
|
||||
android:layout_centerHorizontal="true"
|
||||
android:layout_marginTop="25dp"
|
||||
android:layout_toStartOf="@id/guard_imageView"
|
||||
android:scaleType="centerCrop"
|
||||
android:src="@drawable/guardian_img_wings"
|
||||
android:visibility="invisible"
|
||||
app:riv_oval="true" />
|
||||
|
||||
<com.opensource.svgaplayer.SVGAImageView
|
||||
android:id="@+id/gift_svga"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
|
||||
android:layout_centerInParent="true"
|
||||
android:scaleType="centerCrop"
|
||||
android:src="@drawable/guardian_img_two"
|
||||
android:visibility="visible"
|
||||
app:autoPlay="true" />
|
||||
|
||||
</RelativeLayout>
|
||||
</RelativeLayout>
|
200
live/src/main/res/layout/dialog_new_guard_list.xml
Normal file
200
live/src/main/res/layout/dialog_new_guard_list.xml
Normal file
@ -0,0 +1,200 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:background="@color/transparent"
|
||||
android:clipChildren="false">
|
||||
|
||||
<androidx.constraintlayout.widget.ConstraintLayout
|
||||
android:id="@+id/guard_rootView"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="52dp"
|
||||
android:background="@drawable/guardian_img_bg"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent">
|
||||
|
||||
|
||||
<LinearLayout
|
||||
android:id="@+id/guard_linearLayout"
|
||||
android:layout_width="182dp"
|
||||
android:layout_height="42dp"
|
||||
android:layout_marginTop="52dp"
|
||||
android:layout_marginBottom="21dp"
|
||||
android:gravity="center"
|
||||
android:orientation="vertical"
|
||||
app:layout_constraintBottom_toTopOf="@+id/guard_constraintLayout"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent">
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center"
|
||||
android:gravity="center"
|
||||
android:orientation="horizontal">
|
||||
|
||||
<TextView
|
||||
android:id="@+id/list_guard_list_user_name"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text=""
|
||||
android:textColor="#FFFFFF"
|
||||
android:textSize="14sp" />
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/list_guard_list_user_sex"
|
||||
android:layout_width="18dp"
|
||||
android:layout_height="15dp"
|
||||
android:layout_marginStart="3dp"
|
||||
android:layout_marginEnd="3dp"
|
||||
tools:srcCompat="@tools:sample/avatars" />
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/list_guard_list_user_level"
|
||||
android:layout_width="30dp"
|
||||
android:layout_height="15dp"
|
||||
tools:srcCompat="@tools:sample/avatars" />
|
||||
</LinearLayout>
|
||||
|
||||
<TextView
|
||||
android:id="@+id/list_guard_list_user_guard"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text=""
|
||||
android:textColor="#FFFFFF"
|
||||
android:textSize="12sp" />
|
||||
</LinearLayout>
|
||||
|
||||
|
||||
<androidx.constraintlayout.widget.ConstraintLayout
|
||||
android:id="@+id/guard_constraintLayout"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="365dp"
|
||||
android:layout_marginStart="5dp"
|
||||
android:layout_marginTop="11dp"
|
||||
android:layout_marginEnd="5dp"
|
||||
android:background="@drawable/bg_guard_info"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@+id/guard_linearLayout">
|
||||
|
||||
<com.yunbao.common.custom.CommonRefreshView
|
||||
android:id="@+id/refreshView"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="0dp"
|
||||
android:layout_weight="1"
|
||||
app:crv_loadMoreEnable="false"
|
||||
app:crv_refreshEnable="false"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
|
||||
<RelativeLayout
|
||||
android:id="@+id/guard_relativeLayout"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="77dp"
|
||||
android:layout_marginTop="-20dp"
|
||||
android:background="@drawable/img_guard_bottom"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@+id/guard_constraintLayout">
|
||||
|
||||
<RelativeLayout
|
||||
android:id="@+id/guard_tip_layout"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:layout_marginTop="25dp"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent">
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_centerVertical="true"
|
||||
android:orientation="vertical">
|
||||
|
||||
<TextView
|
||||
android:id="@+id/guard_tip1"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginLeft="10dp"
|
||||
android:text=""
|
||||
android:textColor="#A281FD"
|
||||
android:textSize="14sp" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/guard_tip2"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_below="@id/guard_coin_name"
|
||||
android:layout_centerVertical="true"
|
||||
android:layout_marginLeft="10dp"
|
||||
android:drawablePadding="4dp"
|
||||
android:text="456"
|
||||
android:textColor="#A281FD"
|
||||
android:textSize="14sp"
|
||||
android:visibility="gone" />
|
||||
</LinearLayout>
|
||||
|
||||
|
||||
<TextView
|
||||
android:id="@+id/guard_btn_buy"
|
||||
android:layout_width="90dp"
|
||||
android:layout_height="30dp"
|
||||
android:layout_alignParentEnd="true"
|
||||
android:layout_centerVertical="true"
|
||||
android:layout_marginEnd="15dp"
|
||||
android:background="@drawable/bg_guard_btn_buy"
|
||||
android:enabled="false"
|
||||
android:gravity="center"
|
||||
android:text="@string/guard_buy_2"
|
||||
android:textColor="@color/white"
|
||||
android:textSize="14sp" />
|
||||
</RelativeLayout>
|
||||
</RelativeLayout>
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
|
||||
<RelativeLayout
|
||||
android:layout_width="243dp"
|
||||
android:layout_height="117dp"
|
||||
android:layout_above="@id/guard_rootView"
|
||||
android:layout_centerHorizontal="true"
|
||||
android:layout_gravity="center"
|
||||
android:layout_marginBottom="-102dp"
|
||||
android:scaleType="centerCrop"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent">
|
||||
|
||||
|
||||
<com.makeramen.roundedimageview.RoundedImageView
|
||||
android:id="@+id/guard_imageView"
|
||||
android:layout_width="58dp"
|
||||
android:layout_height="58dp"
|
||||
android:layout_centerInParent="true"
|
||||
android:layout_centerHorizontal="true"
|
||||
android:layout_centerVertical="true"
|
||||
android:scaleType="centerCrop"
|
||||
android:src="@drawable/guardian_img_wings"
|
||||
android:visibility="visible"
|
||||
app:riv_oval="true" />
|
||||
|
||||
|
||||
<com.opensource.svgaplayer.SVGAImageView
|
||||
android:id="@+id/gift_svga"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:src="@drawable/guardian_img_wings"
|
||||
android:visibility="visible"
|
||||
app:autoPlay="true" />
|
||||
|
||||
</RelativeLayout>
|
||||
|
||||
</RelativeLayout>
|
@ -48,7 +48,7 @@
|
||||
android:ellipsize="end"
|
||||
android:maxWidth="100dp"
|
||||
android:singleLine="true"
|
||||
android:textColor="#F6F7FB"
|
||||
android:textColor="#3F3F3F"
|
||||
android:textSize="15sp"
|
||||
/>
|
||||
|
||||
@ -85,6 +85,7 @@
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginBottom="5dp"
|
||||
android:layout_marginEnd="20dp"
|
||||
android:layout_marginTop="4dp"
|
||||
android:orientation="vertical">
|
||||
|
||||
@ -102,8 +103,9 @@
|
||||
android:id="@+id/votes"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="123456789"
|
||||
android:textColor="#ffc2dff0"
|
||||
android:text="1"
|
||||
android:textColor="#979797"
|
||||
android:layout_gravity="right"
|
||||
android:gravity="center"
|
||||
android:textSize="12sp"/>
|
||||
|
||||
|
@ -198,8 +198,6 @@
|
||||
android:layout_width="27dp"
|
||||
android:layout_height="27dp"
|
||||
android:layout_centerInParent="true"
|
||||
android:layout_centerHorizontal="true"
|
||||
android:layout_centerVertical="true"
|
||||
android:scaleType="centerCrop"
|
||||
android:src="@mipmap/img_guardian_empty"
|
||||
app:riv_oval="true" />
|
||||
@ -246,10 +244,52 @@
|
||||
android:layout_marginBottom="4dp"
|
||||
android:padding="3dp"
|
||||
android:src="@mipmap/icon_live_close_3" />
|
||||
<LinearLayout
|
||||
android:id="@+id/hour_rank_layout"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="21dp"
|
||||
android:layout_below="@id/lin"
|
||||
android:layout_marginLeft="10dp"
|
||||
android:layout_marginTop="8dp"
|
||||
android:background="@drawable/bg_hour_rank_list"
|
||||
android:gravity="center_vertical"
|
||||
android:orientation="horizontal"
|
||||
android:paddingLeft="8dp"
|
||||
android:paddingRight="5dp">
|
||||
|
||||
<include
|
||||
layout="@layout/view_wish_list"
|
||||
android:layout_width="14dp"
|
||||
android:layout_weight="0.0"
|
||||
android:layout_height="14dp"
|
||||
android:visibility="gone"
|
||||
android:src="@mipmap/live_icon_wishlist" />
|
||||
|
||||
<ViewFlipper
|
||||
android:id="@+id/hour_rank_list"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="20dp"
|
||||
android:layout_marginStart="6dp"
|
||||
android:layout_weight="2"
|
||||
android:flipInterval="5000"
|
||||
android:layout_marginEnd="6dp"
|
||||
android:inAnimation="@anim/anim_marquee_in"
|
||||
android:outAnimation="@anim/anim_marquee_out"/>
|
||||
<ImageView
|
||||
android:layout_width="4dp"
|
||||
android:layout_gravity="center"
|
||||
|
||||
android:layout_height="8dp"
|
||||
android:src="@drawable/live_icon_right_more" />
|
||||
|
||||
|
||||
</LinearLayout>
|
||||
<!--贡献-->
|
||||
<LinearLayout
|
||||
android:id="@+id/btn_votes"
|
||||
android:layout_toRightOf="@id/hour_rank_layout"
|
||||
android:layout_width="wrap_content"
|
||||
android:visibility="gone"
|
||||
android:layout_height="21dp"
|
||||
android:layout_below="@id/lin"
|
||||
android:layout_marginLeft="10dp"
|
||||
@ -294,9 +334,9 @@
|
||||
android:id="@+id/btn_guard"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="21dp"
|
||||
android:layout_alignTop="@id/btn_votes"
|
||||
android:layout_alignTop="@id/hour_rank_layout"
|
||||
android:layout_marginLeft="10dp"
|
||||
android:layout_toRightOf="@id/btn_votes"
|
||||
android:layout_toRightOf="@id/hour_rank_layout"
|
||||
android:background="@drawable/bg_live_item"
|
||||
android:gravity="center_vertical"
|
||||
android:orientation="horizontal"
|
||||
@ -330,9 +370,9 @@
|
||||
android:id="@+id/live_wks_layout"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="21dp"
|
||||
android:layout_alignTop="@id/btn_votes"
|
||||
android:layout_alignTop="@id/hour_rank_layout"
|
||||
android:layout_marginLeft="10dp"
|
||||
android:layout_toRightOf="@id/btn_votes"
|
||||
android:layout_toRightOf="@id/hour_rank_layout"
|
||||
android:background="@drawable/bg_live_item"
|
||||
android:gravity="center_vertical"
|
||||
android:orientation="horizontal"
|
||||
@ -360,7 +400,7 @@
|
||||
android:id="@+id/wish_list_layout"
|
||||
android:layout_width="90dp"
|
||||
android:layout_height="21dp"
|
||||
android:layout_alignTop="@id/btn_votes"
|
||||
android:layout_alignTop="@id/hour_rank_layout"
|
||||
android:layout_marginStart="10dp"
|
||||
android:layout_toRightOf="@id/live_wks_layout"
|
||||
android:background="@drawable/bg_live_item"
|
||||
@ -392,7 +432,7 @@
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="21dp"
|
||||
android:layout_below="@id/lin"
|
||||
android:layout_alignTop="@id/btn_votes"
|
||||
android:layout_alignTop="@id/hour_rank_layout"
|
||||
android:background="@drawable/bg_live_item"
|
||||
android:gravity="center_vertical"
|
||||
android:orientation="horizontal"
|
||||
@ -428,7 +468,7 @@
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="21dp"
|
||||
android:layout_below="@id/lin"
|
||||
android:layout_alignTop="@id/btn_votes"
|
||||
android:layout_alignTop="@id/hour_rank_layout"
|
||||
android:layout_alignParentRight="true"
|
||||
android:layout_marginLeft="10dp"
|
||||
android:layout_marginRight="12dp"
|
||||
@ -467,7 +507,7 @@
|
||||
android:id="@+id/open_sidebar"
|
||||
android:layout_width="69dp"
|
||||
android:layout_height="20dp"
|
||||
android:layout_alignTop="@id/btn_votes"
|
||||
android:layout_alignTop="@id/hour_rank_layout"
|
||||
android:layout_alignParentRight="true"
|
||||
android:background="@drawable/bg_live_item_right"
|
||||
android:clickable="true"
|
||||
@ -495,7 +535,7 @@
|
||||
android:id="@+id/btn_noble"
|
||||
android:layout_width="45dp"
|
||||
android:layout_height="45dp"
|
||||
android:layout_alignTop="@id/btn_votes"
|
||||
android:layout_alignTop="@id/hour_rank_layout"
|
||||
android:layout_toRightOf="@id/btn_guard"
|
||||
android:paddingLeft="8dp"
|
||||
android:paddingRight="5dp"
|
||||
@ -507,7 +547,7 @@
|
||||
android:id="@+id/btn_medal_rank"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="21dp"
|
||||
android:layout_alignTop="@id/btn_votes"
|
||||
android:layout_alignTop="@id/hour_rank_layout"
|
||||
android:layout_marginLeft="10dp"
|
||||
android:layout_toRightOf="@id/btn_guard"
|
||||
android:background="@drawable/bg_live_item"
|
||||
@ -544,7 +584,7 @@
|
||||
android:id="@+id/luck_container"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="20dp"
|
||||
android:layout_alignTop="@id/btn_votes"
|
||||
android:layout_alignTop="@id/hour_rank_layout"
|
||||
android:layout_marginLeft="10dp"
|
||||
android:layout_marginRight="10dp"
|
||||
android:layout_toRightOf="@id/btn_medal_rank" />
|
||||
@ -553,7 +593,7 @@
|
||||
android:id="@+id/live_time"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="20dp"
|
||||
android:layout_below="@id/btn_votes"
|
||||
android:layout_below="@id/hour_rank_layout"
|
||||
android:layout_marginLeft="10dp"
|
||||
android:layout_marginTop="5dp"
|
||||
android:background="@drawable/bg_live_push_time"
|
||||
@ -659,7 +699,7 @@
|
||||
android:id="@+id/btn_red_pack"
|
||||
android:layout_width="40dp"
|
||||
android:layout_height="50dp"
|
||||
android:layout_below="@id/btn_votes"
|
||||
android:layout_below="@id/hour_rank_layout"
|
||||
android:layout_alignParentRight="true"
|
||||
android:layout_marginTop="80dp"
|
||||
android:layout_marginRight="10dp"
|
||||
@ -776,7 +816,7 @@
|
||||
android:id="@+id/title_container"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="26dp"
|
||||
android:layout_below="@id/btn_votes"
|
||||
android:layout_below="@id/hour_rank_layout"
|
||||
android:layout_marginLeft="10dp"
|
||||
android:layout_marginTop="10dp"
|
||||
android:layout_marginRight="10dp" />
|
||||
@ -785,7 +825,7 @@
|
||||
android:id="@+id/gif_gift_tip_group"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="26dp"
|
||||
android:layout_below="@id/btn_votes"
|
||||
android:layout_below="@id/hour_rank_layout"
|
||||
android:layout_marginLeft="10dp"
|
||||
android:layout_marginTop="10dp"
|
||||
android:layout_marginRight="10dp"
|
||||
|
Loading…
Reference in New Issue
Block a user