fix bugs.4
This commit is contained in:
@@ -101,6 +101,7 @@ import com.xscm.modulemain.manager.RoomManager
|
||||
import com.xscm.modulemain.service.ForegroundService
|
||||
import com.xscm.modulemain.service.RoomPlayService
|
||||
import com.xscm.moduleutil.BaseEvent
|
||||
import com.xscm.moduleutil.adapter.LikeUser2Adapter
|
||||
import com.xscm.moduleutil.adapter.LikeUserAdapter
|
||||
import com.xscm.moduleutil.base.AppStateListener
|
||||
import com.xscm.moduleutil.base.AppStateManager
|
||||
@@ -211,7 +212,7 @@ class RoomActivity : BaseMvpActivity<RoomPresenter?, ActivityRoomBinding?>(),
|
||||
@Autowired
|
||||
var taskId: String? = null
|
||||
|
||||
var likeUserAdapter: LikeUserAdapter<RoomOnlineBean>? = null
|
||||
var likeUserAdapter: LikeUser2Adapter<RoomOnlineBean>? = null
|
||||
var permissions: Array<String> = arrayOf(Manifest.permission.RECORD_AUDIO)
|
||||
private var isSave = false //活动是否将被系统回收
|
||||
|
||||
@@ -507,7 +508,7 @@ class RoomActivity : BaseMvpActivity<RoomPresenter?, ActivityRoomBinding?>(),
|
||||
mBinding!!.roomTop.userRecyclerView.layoutManager = LinearLayoutManager(
|
||||
this, LinearLayoutManager.HORIZONTAL, false
|
||||
)
|
||||
likeUserAdapter = LikeUserAdapter()
|
||||
likeUserAdapter = LikeUser2Adapter()
|
||||
mBinding?.roomTop?.userRecyclerView?.adapter = likeUserAdapter
|
||||
likeUserAdapter!!.onItemClickListener =
|
||||
BaseQuickAdapter.OnItemClickListener { adapter, view, position ->
|
||||
|
||||
@@ -48,7 +48,6 @@ import java.util.List;
|
||||
*/
|
||||
public class RoomJukeboxFragment extends BaseMvpFragment<JukeboxPresenter, FragmentJukeboxBinding> implements JukeboxContacts.View {
|
||||
RoomInfoResp roomInfoResp;
|
||||
RoomJukeboxAdapter adapter;
|
||||
private String roomId;
|
||||
private PopupWindow popupWindow;
|
||||
protected String pitNumber;//当前点击的麦序
|
||||
@@ -64,6 +63,9 @@ public class RoomJukeboxFragment extends BaseMvpFragment<JukeboxPresenter, Fragm
|
||||
|
||||
List<RoomPitBean> roomPitBeans = new ArrayList<>();
|
||||
|
||||
List<RoomJukeboxWheatView> viewList = new ArrayList<>();
|
||||
|
||||
|
||||
public RoomJukeboxFragment() {
|
||||
// Required empty public constructor
|
||||
}
|
||||
@@ -103,48 +105,60 @@ public class RoomJukeboxFragment extends BaseMvpFragment<JukeboxPresenter, Fragm
|
||||
protected void initView() {
|
||||
initPopupWindow();
|
||||
mBinding.guestContainer.setVisibility(GONE);
|
||||
adapter = new RoomJukeboxAdapter(R.layout.item_jukebox);
|
||||
GridLayoutManager layoutManager = new GridLayoutManager(getContext(), 4);
|
||||
mBinding.rvJukebox.setLayoutManager(layoutManager);
|
||||
mBinding.rvJukebox.setAdapter(adapter);
|
||||
adapter.setOnWheatClickListener(new RoomJukeboxAdapter.OnWheatClickListener() {
|
||||
// adapter = new RoomJukeboxAdapter(R.layout.item_jukebox);
|
||||
// GridLayoutManager layoutManager = new GridLayoutManager(getContext(), 4);
|
||||
// mBinding.rvJukebox.setLayoutManager(layoutManager);
|
||||
// mBinding.rvJukebox.setAdapter(adapter);
|
||||
|
||||
@Override
|
||||
public void onWheatClick(RoomJukeboxWheatView roomJukeboxWheatView, int position) {
|
||||
|
||||
if (ClickUtils.isFastDoubleClick(roomJukeboxWheatView)) {
|
||||
return;
|
||||
}
|
||||
|
||||
RoomPitBean pitBean = roomJukeboxWheatView.pitBean;
|
||||
// 可选:点击事件处理
|
||||
Log.d("Wheat", "Clicked pit: " + position);
|
||||
if (!pitBean.getUser_id().equals("0") && !pitBean.getUser_id().isEmpty()) {
|
||||
RoomUserInfoFragment.show(roomId, pitBean.getUser_id(), pitBean.getPit_number(), getHostUser(), false, 3, isNumberWhether(), getChildFragmentManager());
|
||||
} else {
|
||||
if (cheackWether(pitBean.getPit_number())) {
|
||||
pitNumber = pitBean.getPit_number();
|
||||
roomPitBean = pitBean;
|
||||
showPopupMenu(roomJukeboxWheatView); // v 是点击的按钮视图
|
||||
} else if ((position + 1) == 10) {
|
||||
if (ActivityUtils.getTopActivity() instanceof RoomActivity) {
|
||||
if (((RoomActivity) ActivityUtils.getTopActivity()).getHostUser() < 4) {
|
||||
if (!isFastDoubleClick("online_dialog", position + 1 + "")) {
|
||||
RoomOnlineDialogFragment.show(roomId, position + 1 + "", roomInfoResp.getUser_info(), roomInfoResp, getChildFragmentManager());
|
||||
}
|
||||
} else {
|
||||
com.hjq.toast.ToastUtils.show("请等待主持抱麦");
|
||||
}
|
||||
}
|
||||
viewList.clear();
|
||||
viewList.add(mBinding.wheatView1);
|
||||
viewList.add(mBinding.wheatView2);
|
||||
viewList.add(mBinding.wheatView3);
|
||||
viewList.add(mBinding.wheatView4);
|
||||
viewList.add(mBinding.wheatView5);
|
||||
viewList.add(mBinding.wheatView6);
|
||||
viewList.add(mBinding.wheatView7);
|
||||
viewList.add(mBinding.wheatView8);
|
||||
|
||||
|
||||
for (int i = 0; i < viewList.size(); i++) {
|
||||
RoomJukeboxWheatView roomJukeboxWheatView = viewList.get(i);
|
||||
int finalI = i;
|
||||
roomJukeboxWheatView.setOnClickListener(new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
if (ClickUtils.isFastDoubleClick(roomJukeboxWheatView)) {
|
||||
return;
|
||||
}
|
||||
RoomPitBean pitBean = roomJukeboxWheatView.pitBean;
|
||||
// 可选:点击事件处理
|
||||
Log.d("Wheat", "Clicked pit: " + finalI);
|
||||
if (!pitBean.getUser_id().equals("0") && !pitBean.getUser_id().isEmpty()) {
|
||||
RoomUserInfoFragment.show(roomId, pitBean.getUser_id(), pitBean.getPit_number(), getHostUser(), false, 3, isNumberWhether(), getChildFragmentManager());
|
||||
} else {
|
||||
MvpPre.applyPit(roomId, position + 1 + "");
|
||||
if (cheackWether(pitBean.getPit_number())) {
|
||||
pitNumber = pitBean.getPit_number();
|
||||
roomPitBean = pitBean;
|
||||
showPopupMenu(roomJukeboxWheatView); // v 是点击的按钮视图
|
||||
} else if ((finalI + 1) == 10) {
|
||||
if (ActivityUtils.getTopActivity() instanceof RoomActivity) {
|
||||
if (((RoomActivity) ActivityUtils.getTopActivity()).getHostUser() < 4) {
|
||||
if (!isFastDoubleClick("online_dialog", finalI + 1 + "")) {
|
||||
RoomOnlineDialogFragment.show(roomId, finalI + 1 + "", roomInfoResp.getUser_info(), roomInfoResp, getChildFragmentManager());
|
||||
}
|
||||
} else {
|
||||
com.hjq.toast.ToastUtils.show("请等待主持抱麦");
|
||||
}
|
||||
}
|
||||
} else {
|
||||
MvpPre.applyPit(roomId, finalI + 1 + "");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
});
|
||||
|
||||
mBinding.wvZc.setOnClickListener(new View.OnClickListener() {
|
||||
@Override
|
||||
@@ -372,7 +386,7 @@ public class RoomJukeboxFragment extends BaseMvpFragment<JukeboxPresenter, Fragm
|
||||
return false;
|
||||
} else {
|
||||
if (roomInfoResp.getRoom_info().getPit_list().size() > 8) {
|
||||
if (roomInfoResp.getUser_info().getPit_number() == 9 && !pitNumber.equals("10")) {
|
||||
if (roomInfoResp.getRoom_info().getPit_list().get(8).getUser_id().equals(roomInfoResp.getUser_info().getUser_id() + "")) {
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
@@ -395,12 +409,16 @@ public class RoomJukeboxFragment extends BaseMvpFragment<JukeboxPresenter, Fragm
|
||||
}
|
||||
|
||||
public void setView() {
|
||||
|
||||
roomPitBeans.clear();
|
||||
for (int i = 0; i < roomInfoResp.getRoom_info().getPit_list().size(); i++) {
|
||||
RoomPitBean roomPitBean = roomInfoResp.getRoom_info().getPit_list().get(i);
|
||||
|
||||
if (!roomPitBean.getPit_number().equals("9") && !roomPitBean.getPit_number().equals("10")) {
|
||||
roomPitBeans.add(roomPitBean);
|
||||
if (roomPitBean.getUser_id().equals(SpUtil.getUserId() + "")) {
|
||||
roomPitBean.setIs_online(1);
|
||||
}
|
||||
viewList.get(i).setData(roomPitBean);
|
||||
} else if (roomPitBean.getPit_number().equals("9")) {
|
||||
// 确保视图的pitNumber与数据的pit_number匹配
|
||||
mBinding.wvZc.setRoomWheatNumber("9");
|
||||
@@ -411,7 +429,6 @@ public class RoomJukeboxFragment extends BaseMvpFragment<JukeboxPresenter, Fragm
|
||||
}
|
||||
}
|
||||
}
|
||||
adapter.setNewData(roomPitBeans);
|
||||
|
||||
if (roomInfoResp.getSinger_info() != null) {
|
||||
if (roomInfoResp.getSinger_info().getSong_info() != null) {
|
||||
@@ -448,7 +465,6 @@ public class RoomJukeboxFragment extends BaseMvpFragment<JukeboxPresenter, Fragm
|
||||
roomPitBean.setImageType(false);
|
||||
}
|
||||
}
|
||||
adapter.notifyDataSetChanged();
|
||||
}
|
||||
} else {
|
||||
mBinding.ciUserAva.setImageResource(0);
|
||||
@@ -532,8 +548,8 @@ public class RoomJukeboxFragment extends BaseMvpFragment<JukeboxPresenter, Fragm
|
||||
LogUtils.e("juke", e.getMessage());
|
||||
pitBean.setImageType(false);
|
||||
}
|
||||
if (pitBean.getUser_id().equals(SpUtil.getUserId()+"")){
|
||||
if (getActivity()!=null){
|
||||
if (pitBean.getUser_id().equals(SpUtil.getUserId() + "")) {
|
||||
if (getActivity() != null) {
|
||||
if (getActivity() instanceof RoomActivity) {
|
||||
((RoomActivity) getActivity()).setrlMic(true);
|
||||
}
|
||||
@@ -542,7 +558,7 @@ public class RoomJukeboxFragment extends BaseMvpFragment<JukeboxPresenter, Fragm
|
||||
|
||||
// 使用set方法更新数据,然后通知适配器
|
||||
roomPitBeans.set(position, pitBean);
|
||||
adapter.notifyItemChanged(position);
|
||||
viewList.get(position).setData(pitBean);
|
||||
}
|
||||
|
||||
|
||||
@@ -623,7 +639,7 @@ public class RoomJukeboxFragment extends BaseMvpFragment<JukeboxPresenter, Fragm
|
||||
pitBean.setImageType(false);
|
||||
// 使用set方法更新数据,然后通知适配器
|
||||
roomPitBeans.set(position, pitBean);
|
||||
adapter.notifyItemChanged(position);
|
||||
viewList.get(position).setData(pitBean);
|
||||
if (SpUtil.getUserId() == userId) {
|
||||
if (getActivity() != null) {
|
||||
if (getActivity() instanceof RoomActivity) {
|
||||
@@ -649,7 +665,7 @@ public class RoomJukeboxFragment extends BaseMvpFragment<JukeboxPresenter, Fragm
|
||||
int toIndex = Integer.parseInt(toPit) - 1;
|
||||
|
||||
if (toPit.equals("9")) {
|
||||
RoomPitBean fromBean = adapter.getData().get(fromIndex);
|
||||
RoomPitBean fromBean = viewList.get(fromIndex).pitBean;
|
||||
fromBean.setPit_number(toPit);
|
||||
fromBean.clone();
|
||||
//这里需要是重新的指向地址,不然会出现,虽然页面展示的是,但是在点击的时候,找不到对应的数据
|
||||
@@ -664,7 +680,7 @@ public class RoomJukeboxFragment extends BaseMvpFragment<JukeboxPresenter, Fragm
|
||||
configGameOptionBtn();
|
||||
}
|
||||
|
||||
RoomPitBean temp = adapter.getData().get(fromIndex);
|
||||
RoomPitBean temp = viewList.get(fromIndex).pitBean;
|
||||
temp.setUser_id("");
|
||||
temp.setAvatar("");
|
||||
temp.setNickname("");
|
||||
@@ -675,18 +691,18 @@ public class RoomJukeboxFragment extends BaseMvpFragment<JukeboxPresenter, Fragm
|
||||
temp.setPit_number(fromPit);
|
||||
roomInfoResp.getRoom_info().getPit_list().set(fromIndex, temp);
|
||||
roomPitBeans.set(fromIndex, temp);
|
||||
adapter.notifyItemChanged(fromIndex);
|
||||
viewList.get(fromIndex).setData(temp);
|
||||
} else {
|
||||
RoomPitBean fromBean = adapter.getData().get(fromIndex);
|
||||
RoomPitBean fromBean = viewList.get(fromIndex).pitBean;
|
||||
fromBean.setPit_number(toPit);
|
||||
RoomPitBean toBean = adapter.getData().get(toIndex);
|
||||
RoomPitBean toBean = viewList.get(toIndex).pitBean;
|
||||
toBean.setPit_number(fromPit);
|
||||
roomInfoResp.getRoom_info().getPit_list().set(fromIndex, toBean);
|
||||
roomInfoResp.getRoom_info().getPit_list().set(toIndex, fromBean);
|
||||
roomPitBeans.set(fromIndex, toBean);
|
||||
roomPitBeans.set(toIndex, fromBean);
|
||||
adapter.notifyItemChanged(fromIndex);
|
||||
adapter.notifyItemChanged(toIndex);
|
||||
viewList.get(fromIndex).setData(toBean);
|
||||
viewList.get(toIndex).setData(fromBean);
|
||||
}
|
||||
LogUtils.e("huanmai2", mBinding.wvZc.pitBean);
|
||||
}
|
||||
@@ -741,14 +757,18 @@ public class RoomJukeboxFragment extends BaseMvpFragment<JukeboxPresenter, Fragm
|
||||
mBinding.wvZc.pitBean.setImageType(false);
|
||||
mBinding.wvZc.setData(mBinding.wvZc.pitBean);
|
||||
} else {
|
||||
for (RoomPitBean roomPitBean : roomPitBeans) {
|
||||
|
||||
for (int i = 0; i < roomPitBeans.size(); i++) {
|
||||
if (roomPitBean.getUser_id().equals(userId)) {
|
||||
roomPitBean.setImageType(true);
|
||||
} else {
|
||||
roomPitBean.setImageType(false);
|
||||
}
|
||||
viewList.get(i).setData(roomPitBean);
|
||||
}
|
||||
adapter.notifyDataSetChanged();
|
||||
|
||||
// adapter.notifyDataSetChanged();
|
||||
|
||||
}
|
||||
} else {
|
||||
mBinding.ciUserAva.setImageResource(0);
|
||||
@@ -784,7 +804,8 @@ public class RoomJukeboxFragment extends BaseMvpFragment<JukeboxPresenter, Fragm
|
||||
roomPitBean2.setNickname(message.getText().getFromUserInfo().getNickname());
|
||||
roomPitBean2.setDress(message.getText().getFromUserInfo().getDress());
|
||||
roomPitBean2.setAvatar(message.getText().getFromUserInfo().getAvatar());
|
||||
adapter.notifyItemChanged(i);
|
||||
viewList.get(i).setData(roomPitBean2);
|
||||
// adapter.notifyItemChanged(i);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -797,7 +818,7 @@ public class RoomJukeboxFragment extends BaseMvpFragment<JukeboxPresenter, Fragm
|
||||
for (int i = 0; i < roomPitBeans.size(); i++) {
|
||||
RoomPitBean roomPitBean2 = roomPitBeans.get(i);
|
||||
roomPitBean2.setCharm("0");
|
||||
adapter.notifyItemChanged(i);
|
||||
viewList.get(i).setCharm("0");
|
||||
}
|
||||
}
|
||||
|
||||
@@ -834,7 +855,7 @@ public class RoomJukeboxFragment extends BaseMvpFragment<JukeboxPresenter, Fragm
|
||||
RoomPitBean pitBean = roomPitBeans.get(i);
|
||||
if (pitBean.getUser_id().equals(userId)) {
|
||||
pitBean.setCharm(charm);
|
||||
adapter.notifyItemChanged(i);
|
||||
viewList.get(i).setCharm(charm);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -851,7 +872,7 @@ public class RoomJukeboxFragment extends BaseMvpFragment<JukeboxPresenter, Fragm
|
||||
RoomPitBean roomPitBean2 = roomPitBeans.get(i);
|
||||
if (roomPitBean2.getUser_id().equals(userId)) {
|
||||
roomPitBean2.setCharm("0");
|
||||
adapter.notifyItemChanged(i);
|
||||
viewList.get(i).setCharm("0");
|
||||
}
|
||||
|
||||
}
|
||||
@@ -859,6 +880,11 @@ public class RoomJukeboxFragment extends BaseMvpFragment<JukeboxPresenter, Fragm
|
||||
|
||||
public void event1058(RoomMessageEvent messageEvent) {
|
||||
int type = messageEvent.getText().getType();
|
||||
|
||||
// if (messageEvent.getText().getUser_id().equals(roomInfoResp.getUser_info().getUser_id() + "")) {
|
||||
// setView();
|
||||
// }
|
||||
|
||||
RoomPitBean pitBean = mBinding.wvZc.pitBean;
|
||||
if (pitBean.getUser_id().equals(messageEvent.getText().getUser_id())) {
|
||||
pitBean.setIs_online(type == 1 ? 1 : 2);
|
||||
@@ -870,9 +896,8 @@ public class RoomJukeboxFragment extends BaseMvpFragment<JukeboxPresenter, Fragm
|
||||
RoomPitBean roomPitBean2 = roomPitBeans.get(i);
|
||||
if (roomPitBean2.getUser_id().equals(messageEvent.getText().getUser_id())) {
|
||||
roomPitBean2.setIs_online(type == 1 ? 1 : 2);
|
||||
adapter.notifyItemChanged(i);
|
||||
viewList.get(i).setData(roomPitBean2);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user