隐身榜单的更改

This commit is contained in:
18401019693
2022-09-19 16:22:57 +08:00
parent 0de802bf3c
commit f531fd4d0e
8 changed files with 81 additions and 33 deletions

View File

@@ -17,16 +17,19 @@ import androidx.fragment.app.DialogFragment;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.blankj.utilcode.util.GsonUtils;
import com.yunbao.common.CommonAppConfig;
import com.yunbao.common.Constants;
import com.yunbao.common.activity.AbsActivity;
import com.yunbao.common.activity.WebViewActivity;
import com.yunbao.common.bean.ConfigBean;
import com.yunbao.common.bean.LiveGiftBean;
import com.yunbao.common.bean.NobleRankHideUserListModel;
import com.yunbao.common.bean.UserBean;
import com.yunbao.common.event.CoinChangeEvent;
import com.yunbao.common.event.FollowEvent;
import com.yunbao.common.http.HttpCallback;
import com.yunbao.common.http.live.LiveNetManager;
import com.yunbao.common.interfaces.KeyBoardHeightChangeListener;
import com.yunbao.common.utils.KeyBoardHeightUtil2;
import com.yunbao.common.utils.L;
@@ -87,6 +90,7 @@ import org.greenrobot.eventbus.EventBus;
import org.greenrobot.eventbus.Subscribe;
import org.greenrobot.eventbus.ThreadMode;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashSet;
import java.util.List;
@@ -137,7 +141,9 @@ public abstract class LiveActivity extends AbsActivity implements SocketMessageL
private LiveChatRoomDialogFragment mLiveChatRoomDialogFragment;//私信聊天窗口
protected LiveGuardInfo mLiveGuardInfo;
private HashSet<DialogFragment> mDialogFragmentSet;
// public static boolean isRy = true;
// public static boolean isRy = true;
private List<String> outRankHide = new ArrayList<>();
private boolean outRankHideFirst = true;
@Override
protected void main() {
@@ -1230,16 +1236,48 @@ public abstract class LiveActivity extends AbsActivity implements SocketMessageL
* 打开观看列表弹窗
*/
public void openUserMoreListWindow(int i, boolean isOnly) {
LiveUserMoreDialogFragment fragment = new LiveUserMoreDialogFragment();
fragment.setLiveGuardInfo(mLiveGuardInfo);
Bundle bundle = new Bundle();
bundle.putString(Constants.LIVE_UID, mLiveUid);
bundle.putString(Constants.STREAM, mStream);
bundle.putString("By", i + "");
bundle.putBoolean("only", isOnly);
fragment.setArguments(bundle);
fragment.show(getSupportFragmentManager(), "LiveUserMoreDialogFragment");
LiveUserMoreDialogFragment.activity = this;
if (outRankHideFirst) {
//获取隐身的用户的ID
LiveNetManager.get(mContext)
.getNobleRankHideUserList(new com.yunbao.common.http.base.HttpCallback<NobleRankHideUserListModel>() {
@Override
public void onSuccess(NobleRankHideUserListModel data) {
outRankHide = data.getOutRankHide();
LiveUserMoreDialogFragment fragment = new LiveUserMoreDialogFragment();
fragment.setLiveGuardInfo(mLiveGuardInfo);
Bundle bundle = new Bundle();
bundle.putString(Constants.LIVE_UID, mLiveUid);
bundle.putString(Constants.STREAM, mStream);
bundle.putString("By", i + "");
bundle.putBoolean("only", isOnly);
bundle.putString("outRankHide", GsonUtils.toJson(outRankHide));
fragment.setArguments(bundle);
fragment.show(getSupportFragmentManager(), "LiveUserMoreDialogFragment");
LiveUserMoreDialogFragment.activity = (LiveActivity) mContext;
outRankHideFirst = false;
}
@Override
public void onError(String error) {
Log.e("LiveUserMoreDialog", error);
}
});
} else {
LiveUserMoreDialogFragment fragment = new LiveUserMoreDialogFragment();
fragment.setLiveGuardInfo(mLiveGuardInfo);
Bundle bundle = new Bundle();
bundle.putString(Constants.LIVE_UID, mLiveUid);
bundle.putString(Constants.STREAM, mStream);
bundle.putString("By", i + "");
bundle.putBoolean("only", isOnly);
bundle.putString("outRankHide", GsonUtils.toJson(outRankHide));
fragment.setArguments(bundle);
fragment.show(getSupportFragmentManager(), "LiveUserMoreDialogFragment");
LiveUserMoreDialogFragment.activity = this;
}
}
/**

View File

@@ -246,9 +246,11 @@ public class UserMoreInfoAdapter extends RefreshAdapter<UserBean> {
if (bean.isHide() && (type.equals("5") || type.equals("4"))) {
mName.setText(R.string.mystery_man);
ImgLoader.display(mContext, R.mipmap.hide, mAvatar);
itemView.findViewById(R.id.state).setVisibility(View.GONE);
} else {
ImgLoader.display(mContext, bean.getAvatar(), mAvatar);
mName.setText(bean.getUserNiceName());
itemView.findViewById(R.id.state).setVisibility(View.VISIBLE);
}
if (bean.getDress() != null && bean.getDress().getAvatar_frame() != null) {
gift_svga.setVisibility(View.VISIBLE);

View File

@@ -20,17 +20,17 @@ import androidx.recyclerview.widget.LinearLayoutManager;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.blankj.utilcode.util.GsonUtils;
import com.google.gson.reflect.TypeToken;
import com.yunbao.common.Constants;
import com.yunbao.common.adapter.RefreshAdapter;
import com.yunbao.common.bean.LiveUserRankBean;
import com.yunbao.common.bean.NobleRankHideUserListModel;
import com.yunbao.common.bean.UserBean;
import com.yunbao.common.bean.UserRankModel;
import com.yunbao.common.custom.CommonRefreshView;
import com.yunbao.common.dialog.AbsDialogFragment;
import com.yunbao.common.http.API;
import com.yunbao.common.http.HttpCallback;
import com.yunbao.common.http.live.LiveNetManager;
import com.yunbao.common.utils.DpUtil;
import com.yunbao.live.R;
import com.yunbao.live.activity.LiveActivity;
@@ -111,6 +111,12 @@ public class LiveUserMoreDialogFragment extends AbsDialogFragment implements Vie
mLiveUid = bundle.getString(Constants.LIVE_UID);
stream = bundle.getString(Constants.STREAM);
isOnly = bundle.getBoolean("only", false);
String outRankHideString = bundle.getString("outRankHide");
outRankHide = GsonUtils.fromJson(outRankHideString, new TypeToken<List<String>>(){}.getType());
if (userMoreInfoAdapter != null) {
userMoreInfoAdapter.setHide(outRankHide);
}
title = mRootView.findViewById(R.id.title);
tabs = mRootView.findViewById(R.id.tabs);
audience_btn = mRootView.findViewById(R.id.audience_btn);
@@ -312,23 +318,7 @@ public class LiveUserMoreDialogFragment extends AbsDialogFragment implements Vie
tabs.setVisibility(View.GONE);
title.setVisibility(View.GONE);
}
//获取隐身的用户的ID
LiveNetManager.get(mContext)
.getNobleRankHideUserList(new com.yunbao.common.http.base.HttpCallback<NobleRankHideUserListModel>() {
@Override
public void onSuccess(NobleRankHideUserListModel data) {
outRankHide = data.getOutRankHide();
if (userMoreInfoAdapter != null) {
userMoreInfoAdapter.setHide(outRankHide);
}
}
@Override
public void onError(String error) {
Log.e("LiveUserMoreDialog", error);
}
});
}
@Override

View File

@@ -84,6 +84,7 @@
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginLeft="20dp"
android:orientation="vertical">
@@ -111,6 +112,7 @@
</LinearLayout>
<LinearLayout
android:id="@+id/state"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="5dp"