update 多人PK也用新UI
This commit is contained in:
parent
f024283e80
commit
5356d91fef
@ -146,7 +146,7 @@ public class Constants {
|
||||
public static final String SOCKET_ALL_SERVER_NOTIFY = "AllServerNotify";//全服通知
|
||||
public static final String SOCKET_SEND_BARRAGE = "SendBarrage";//发弹幕
|
||||
public static final String SOCKET_LIVE_DRPK = "LiveDRPK";//多人PK
|
||||
public static final String SOCKET_LIVE_DRPK_RANDOM = "LiveRandomPK";//多人PK
|
||||
public static final String SOCKET_LIVE_DRPK_RANDOM = "LiveRandomPK";//随机PK
|
||||
public static final String SOCKET_LEAVE_ROOM = "disconnect";//用户离开房间
|
||||
public static final String SOCKET_LIVE_END = "StartEndLive";//主播关闭直播
|
||||
public static final String SOCKET_SYSTEM = "SystemNot";//系统消息
|
||||
|
@ -5,6 +5,8 @@ import android.content.res.Resources;
|
||||
import com.yunbao.common.CommonAppContext;
|
||||
|
||||
import java.util.Locale;
|
||||
import java.util.regex.Matcher;
|
||||
import java.util.regex.Pattern;
|
||||
|
||||
/**
|
||||
* Created by cxf on 2017/10/10.
|
||||
@ -28,4 +30,14 @@ public class WordUtil {
|
||||
String language = locale.getLanguage();
|
||||
return language.endsWith("zh");
|
||||
}
|
||||
|
||||
/**
|
||||
* 是否包含特殊字符
|
||||
*/
|
||||
public static boolean isSpecialChar(String str) {
|
||||
String regEx = "[ _`~!@#$%^&*()+=|{}':;',\\[\\].<>/?~!@#¥%……&*()——+|{}【】‘;:”“’。,、?]|\n|\r|\t";
|
||||
Pattern p = Pattern.compile(regEx);
|
||||
Matcher m = p.matcher(str);
|
||||
return m.find();
|
||||
}
|
||||
}
|
||||
|
@ -603,11 +603,15 @@ public class LiveRyAnchorActivity extends LiveActivity implements LiveFunctionCl
|
||||
if (mLiveLinkMicAnchorPresenter != null && !mLiveLinkMicAnchorPresenter.canOpenLinkMicAnchor()) {
|
||||
return;
|
||||
}
|
||||
LiveLinkMicListDialogFragment fragment = new LiveLinkMicListDialogFragment();
|
||||
/* LiveLinkMicListDialogFragment fragment = new LiveLinkMicListDialogFragment();
|
||||
Bundle bundle = new Bundle();
|
||||
bundle.putBoolean("isDRPK", isDRPK);
|
||||
fragment.setArguments(bundle);
|
||||
fragment.show(getSupportFragmentManager(), "LiveLinkMicListDialogFragment");
|
||||
fragment.show(getSupportFragmentManager(), "LiveLinkMicListDialogFragment");*/
|
||||
FreePkDialogFragment fragment=new FreePkDialogFragment();
|
||||
fragment.setDrPkNum(pk_nub);
|
||||
fragment.show(getSupportFragmentManager(),"LiveLinkMicListDialogFragment");
|
||||
|
||||
}
|
||||
|
||||
public void openFreePkWindow() {
|
||||
|
@ -28,6 +28,7 @@ public class FreePkRecyclerAdapter extends RefreshAdapter<RandomPkUserBean> {
|
||||
private static final int HEAD = 0;
|
||||
private static final int ITEM = 2;
|
||||
private int freePkNum;//PK次数
|
||||
private int mDrPkNum = -1;
|
||||
|
||||
public void setFreePkNum(int freePkNum) {
|
||||
this.freePkNum = freePkNum;
|
||||
@ -37,6 +38,9 @@ public class FreePkRecyclerAdapter extends RefreshAdapter<RandomPkUserBean> {
|
||||
super(context);
|
||||
}
|
||||
|
||||
public void setDrPkNum(int mDrPkNum) {
|
||||
this.mDrPkNum = mDrPkNum;
|
||||
}
|
||||
|
||||
@NonNull
|
||||
@Override
|
||||
@ -106,21 +110,31 @@ public class FreePkRecyclerAdapter extends RefreshAdapter<RandomPkUserBean> {
|
||||
ToastUtil.show(R.string.free_pk_user_pking);
|
||||
return;
|
||||
}
|
||||
if (freePkNum == 0) {
|
||||
if (freePkNum == 0 && mDrPkNum == -1) {
|
||||
ToastUtil.show(R.string.free_pk_num_null);
|
||||
return;
|
||||
}
|
||||
|
||||
LiveHttpUtil.getMicList(LiveRyAnchorActivity.mLiveUid, 0, new com.yunbao.common.http.HttpCallback() {
|
||||
@Override
|
||||
public void onSuccess(int code, String msg, String[] info) {
|
||||
System.out.println("code = " + code + ", msg = " + msg + ", info = " + Arrays.deepToString(info));
|
||||
//非0认为未开通连麦权限
|
||||
if (code != 0) {
|
||||
if (mDrPkNum == -1) {
|
||||
ToastUtil.show("邀请 " + bean.getUserNiceName() + " 发送成功");
|
||||
mOnItemClickListener.onItemClick(bean, -1);
|
||||
((LiveRyAnchorActivity) mContext).linkMicAnchorApply(bean.getId(), bean.getId(),
|
||||
((LiveRyAnchorActivity) mContext).buildLinkMicJSON().toString()
|
||||
);
|
||||
return;
|
||||
}
|
||||
if (mDrPkNum <= 0) {
|
||||
ToastUtil.show("多人次數已用完");
|
||||
return;
|
||||
}
|
||||
((LiveRyAnchorActivity) mContext).linkDrMicAnchorApply(bean.getId(), bean.getId());
|
||||
|
||||
} else {
|
||||
ToastUtil.show("請先關閉語言連麥");
|
||||
}
|
||||
|
@ -14,6 +14,7 @@ import com.yunbao.common.glide.ImgLoader;
|
||||
import com.yunbao.common.interfaces.OnItemClickListener;
|
||||
import com.yunbao.common.utils.DialogUitl;
|
||||
import com.yunbao.common.utils.ToastUtil;
|
||||
import com.yunbao.common.utils.WordUtil;
|
||||
import com.yunbao.live.R;
|
||||
|
||||
import java.util.ArrayList;
|
||||
@ -147,6 +148,10 @@ public class LivePrankRecyclerAdapter extends RecyclerView.Adapter<LivePrankRecy
|
||||
DialogUitl.showSimpleInputDialog(mContext, "填寫整蠱內容", DialogUitl.INPUT_TYPE_TEXT, 10, new DialogUitl.SimpleCallback() {
|
||||
@Override
|
||||
public void onConfirmClick(Dialog dialog, String content) {
|
||||
if(WordUtil.isSpecialChar(content)){
|
||||
ToastUtil.show("整蠱內容不能包含特殊字符");
|
||||
return;
|
||||
}
|
||||
if (content.length() >= 2 && content.length() <= 10) {
|
||||
context.setText(content);
|
||||
onItemClickListener.onItemClick(content, ((PrankTurntableBean)list.get((Integer) itemView.getTag())).getId());
|
||||
|
@ -50,10 +50,12 @@ public class FreePkDialogFragment extends AbsDialogFragment implements View.OnCl
|
||||
private View mSearchLayout;
|
||||
private EditText mSearch;
|
||||
private TextView freePkNum;
|
||||
private TextView mPkNumText;
|
||||
private ImageView mClear;
|
||||
private FreePkRecyclerAdapter adapter;
|
||||
private DataHelper helper;
|
||||
private int tabStatus;
|
||||
private int mDrPkNum = -1;
|
||||
|
||||
|
||||
@Override
|
||||
@ -94,6 +96,10 @@ public class FreePkDialogFragment extends AbsDialogFragment implements View.OnCl
|
||||
initData();
|
||||
}
|
||||
|
||||
public void setDrPkNum(int mDrPkNum) {
|
||||
this.mDrPkNum = mDrPkNum;
|
||||
}
|
||||
|
||||
private void initView() {
|
||||
tabLayout = (TabLayout) findViewById(R.id.menu_tab);
|
||||
reset = findViewById(R.id.menu_reset);
|
||||
@ -102,6 +108,7 @@ public class FreePkDialogFragment extends AbsDialogFragment implements View.OnCl
|
||||
mSearch = (EditText) findViewById(R.id.search_edit);
|
||||
mClear = (ImageView) findViewById(R.id.search_clear);
|
||||
freePkNum = (TextView) findViewById(R.id.free_pk_num);
|
||||
mPkNumText = (TextView) findViewById(R.id.tmp_text1);
|
||||
mClear.setOnClickListener(this);
|
||||
reset.setOnClickListener(this);
|
||||
mSearch.addTextChangedListener(new TextWatcher() {
|
||||
@ -120,7 +127,9 @@ public class FreePkDialogFragment extends AbsDialogFragment implements View.OnCl
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
if (mDrPkNum != -1) {
|
||||
mPkNumText.setText("多人PK剩余次數");
|
||||
}
|
||||
initRecycler();
|
||||
}
|
||||
|
||||
@ -133,6 +142,7 @@ public class FreePkDialogFragment extends AbsDialogFragment implements View.OnCl
|
||||
mRecyclerView.initData();
|
||||
mRecyclerView.setRefreshEnable(false);
|
||||
mRecyclerView.setEmptyLayoutId(R.layout.view_live_search_list_empty);
|
||||
adapter.setDrPkNum(mDrPkNum);
|
||||
adapter.setOnItemClickListener(new OnItemClickListener<RandomPkUserBean>() {
|
||||
@Override
|
||||
public void onItemClick(RandomPkUserBean bean, int position) {
|
||||
@ -147,6 +157,10 @@ public class FreePkDialogFragment extends AbsDialogFragment implements View.OnCl
|
||||
|
||||
|
||||
private void initData() {
|
||||
if (mDrPkNum != -1) {
|
||||
freePkNum.setText("" + mDrPkNum);
|
||||
return;
|
||||
}
|
||||
LiveNetManager.get(mContext).getFreePkNumber(new com.yunbao.common.http.base.HttpCallback<Integer>() {
|
||||
@Override
|
||||
public void onSuccess(Integer data) {
|
||||
|
@ -23,6 +23,7 @@ import com.yunbao.common.http.HttpCallback;
|
||||
import com.yunbao.common.utils.DialogUitl;
|
||||
import com.yunbao.common.utils.StringUtil;
|
||||
import com.yunbao.common.utils.ToastUtil;
|
||||
import com.yunbao.common.utils.WordUtil;
|
||||
import com.yunbao.live.R;
|
||||
import com.yunbao.live.adapter.GiftTopAdapter;
|
||||
import com.yunbao.live.adapter.LiveGiftPagerAdapter;
|
||||
@ -58,6 +59,7 @@ public class GiftPopDialog extends PopupWindow implements ActionListener, View.O
|
||||
private String prangContext;
|
||||
private int prangNum;
|
||||
private InputMethodManager imm;
|
||||
private List<PrankGiftBean> giftBeans;
|
||||
|
||||
private void initView(View mRootView) {
|
||||
mLoading = mRootView.findViewById(R.id.loading);
|
||||
@ -132,7 +134,7 @@ public class GiftPopDialog extends PopupWindow implements ActionListener, View.O
|
||||
@Override
|
||||
public void onDismiss() {
|
||||
if (mActionListener != null) {
|
||||
if (bean == null || StringUtil.isEmpty(prangContext) || prangNum==0) {
|
||||
if (bean == null || StringUtil.isEmpty(prangContext) || prangNum == 0) {
|
||||
mActionListener.onDismiss();
|
||||
return;
|
||||
}
|
||||
@ -259,16 +261,36 @@ public class GiftPopDialog extends PopupWindow implements ActionListener, View.O
|
||||
}
|
||||
});
|
||||
} else if (id == R.id.gift_btn) {
|
||||
if (bean == null || StringUtil.isEmpty(prangContext) || prangNum==0) {
|
||||
if (bean == null || StringUtil.isEmpty(prangContext) || prangNum == 0) {
|
||||
ToastUtil.show("整蠱內容或數量不能為空");
|
||||
return;
|
||||
}
|
||||
if(WordUtil.isSpecialChar(prangContext)){
|
||||
ToastUtil.show("整蠱內容不能包含特殊字符");
|
||||
return;
|
||||
}
|
||||
if(prangContext.length()>6){
|
||||
ToastUtil.show("整蠱內容過長");
|
||||
return;
|
||||
}
|
||||
if(giftBeans!=null){
|
||||
for (PrankGiftBean giftBean : giftBeans) {
|
||||
if(giftBean.getGiftId().equals(bean.getId()+"")){
|
||||
ToastUtil.show("整蠱禮物已存在");
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
dismiss();
|
||||
} else if (id == R.id.gift_back) {
|
||||
dismiss();
|
||||
}
|
||||
}
|
||||
|
||||
public void setList(List<PrankGiftBean> giftBeans) {
|
||||
this.giftBeans = giftBeans;
|
||||
}
|
||||
|
||||
|
||||
public interface ActionListener {
|
||||
void onSelectGift(PrankGiftBean bean);
|
||||
|
@ -43,6 +43,7 @@ public class LivePrankDialogFragment extends AbsDialogFragment implements View.O
|
||||
private LivePrankRecyclerAdapter recyclerAdapter;
|
||||
private String mLiveUid;
|
||||
private PrankHttpTurntableBean bean = new PrankHttpTurntableBean();
|
||||
private List<PrankGiftBean> giftBeans;
|
||||
|
||||
public void setmLiveUid(String mLiveUid) {
|
||||
this.mLiveUid = mLiveUid;
|
||||
@ -135,6 +136,10 @@ public class LivePrankDialogFragment extends AbsDialogFragment implements View.O
|
||||
});
|
||||
mPrankBtn.setOnClickListener(view -> {
|
||||
if ((int) view.getTag() == 1) {
|
||||
if(giftBeans!=null&&giftBeans.size()>=20){
|
||||
ToastUtil.show("可添加禮物數量達到上限");
|
||||
return;
|
||||
}
|
||||
GiftPopDialog dialog = new GiftPopDialog(mContext, mRootView, new GiftPopDialog.ActionListener() {
|
||||
|
||||
@Override
|
||||
@ -149,6 +154,7 @@ public class LivePrankDialogFragment extends AbsDialogFragment implements View.O
|
||||
|
||||
}
|
||||
});
|
||||
dialog.setList(giftBeans);
|
||||
dialog.show();
|
||||
} else {
|
||||
setPrankConfig();
|
||||
@ -241,9 +247,10 @@ public class LivePrankDialogFragment extends AbsDialogFragment implements View.O
|
||||
mGiftNotDate.setVisibility(View.GONE);
|
||||
mPrankRecyclerView.setVisibility(View.VISIBLE);
|
||||
recyclerAdapter.setViewType(LivePrankRecyclerAdapter.TYPE_GIFT);
|
||||
giftBeans = data;
|
||||
recyclerAdapter.setList(data);
|
||||
recyclerAdapter.notifyDataSetChanged();
|
||||
}else{
|
||||
} else {
|
||||
mPrankRecyclerView.setVisibility(View.GONE);
|
||||
mGiftNotDate.setVisibility(View.VISIBLE);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user