封版羽声,作为最后的基础版

This commit is contained in:
2025-08-04 17:15:03 +08:00
parent 86b32f65d4
commit 5a6600a7e3
377 changed files with 384105 additions and 357697 deletions

View File

@@ -62,5 +62,6 @@ dependencies {
implementation 'com.alibaba:arouter-api:1.5.2'
//annotationProcessor
annotationProcessor 'com.alibaba:arouter-compiler:1.5.2'
}
apply plugin: 'com.alibaba.arouter' //

View File

@@ -91,9 +91,7 @@
<activity
android:name=".activity.MyRoomActivity"
android:exported="false" />
<activity
android:name=".activity.RealNameActivity"
android:exported="false" />
<activity
android:name=".activity.PhoneReplacementActivity"
android:exported="false" />

View File

@@ -1,23 +1,13 @@
package com.example.modulevocal.activity;
import android.content.Intent;
import android.os.Bundle;
import androidx.activity.EdgeToEdge;
import androidx.appcompat.app.AppCompatActivity;
import androidx.core.graphics.Insets;
import androidx.core.view.ViewCompat;
import androidx.core.view.WindowInsetsCompat;
import androidx.recyclerview.widget.LinearLayoutManager;
import com.example.modulevocal.R;
import com.example.modulevocal.adapter.BindCardAdapter;
import com.example.modulevocal.adapter.PayMethodAdapter;
import com.example.modulevocal.conacts.MyMoneyConactos;
import com.example.modulevocal.conacts.WithdrawalConacts;
import com.example.modulevocal.databinding.ActivityBindCardBinding;
import com.example.modulevocal.databinding.ActivityMyMoneyBinding;
import com.example.modulevocal.presenter.MyMoneyPresenter;
import com.example.modulevocal.presenter.WithdrawalPresenter;
import com.qxcm.moduleutil.activity.BaseMvpActivity;
import com.qxcm.moduleutil.bean.BindType;

View File

@@ -62,7 +62,7 @@ public class BlacklistActivity extends BaseMvpActivity<BlacklistPresenter,Activi
if (item.getType() == 0 || item.getType() == 2) {
// 类型为 关注 或 粉丝:切换 status
item.setStatus(item.getIs_follow() == 0 ? 1 : 0);
item.setStatus(item.getIs_follow() == 1? 1 : 0);
blackAdapter.notifyItemChanged(position);
// updateStatusOnServer(item); // 调用网络请求更新服务器
MvpPre.userGuanz(String.valueOf(item.getUser_id()),"1");

View File

@@ -15,6 +15,7 @@ import androidx.core.view.ViewCompat;
import androidx.core.view.WindowInsetsCompat;
import androidx.recyclerview.widget.GridLayoutManager;
import com.blankj.utilcode.util.LogUtils;
import com.blankj.utilcode.util.ToastUtils;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.example.modulevocal.R;
@@ -41,6 +42,9 @@ import com.qxcm.moduleutil.utils.SpUtil;
import com.qxcm.moduleutil.widget.Constants;
import com.qxcm.moduleutil.widget.img.FullScreenUtil;
import com.stx.xhb.xbanner.XBanner;
import com.tencent.imsdk.v2.V2TIMCallback;
import com.tencent.imsdk.v2.V2TIMManager;
import com.tencent.imsdk.v2.V2TIMUserFullInfo;
import com.tencent.qcloud.tuicore.util.SPUtils;
import org.greenrobot.eventbus.EventBus;
@@ -279,6 +283,22 @@ public class EditUserInfoActivity extends BaseMvpActivity<EditUserPresenter, Act
ImageUtils.loadHeadCC(xBannerData.getUrl(), (ImageView) view);
}
});
V2TIMUserFullInfo userFullInfo = new V2TIMUserFullInfo();
userFullInfo.setNickname(userInfo.getNickname());
userFullInfo.setFaceUrl(userInfo.getAvatar());
userFullInfo.setAllowType(userInfo.getSex());
V2TIMManager.getInstance().setSelfInfo(userFullInfo, new V2TIMCallback() {
@Override
public void onSuccess() {
LogUtils.e("@@@", "成功");
}
@Override
public void onError(int code, String desc) {
LogUtils.e("@@@", "描述"+desc);
}
});
}
@Override

View File

@@ -10,6 +10,7 @@ import androidx.core.graphics.Insets;
import androidx.core.view.ViewCompat;
import androidx.core.view.WindowInsetsCompat;
import com.alibaba.android.arouter.launcher.ARouter;
import com.example.modulevocal.R;
import com.example.modulevocal.conacts.MyMoneyConactos;
import com.example.modulevocal.databinding.ActivityMyMoneyBinding;
@@ -17,6 +18,7 @@ import com.example.modulevocal.presenter.MyMoneyPresenter;
import com.hjq.toast.ToastUtils;
import com.qxcm.moduleutil.activity.BaseMvpActivity;
import com.qxcm.moduleutil.bean.WalletBean;
import com.qxcm.moduleutil.utils.ARouteConstants;
import com.qxcm.moduleutil.utils.SpUtil;
/**
@@ -52,7 +54,8 @@ public class MyMoneyActivity extends BaseMvpActivity<MyMoneyPresenter, ActivityM
}else if (view.getId()==R.id.tv_tx){//提现
if (!SpUtil.getRealName()){
ToastUtils.show("实名认证后才能提现");
startActivity(new Intent(this, RealName1Activity.class));
ARouter.getInstance().build(ARouteConstants.REAL_NAME_ACTIVITY2).navigation();
// startActivity(new Intent(this, RealName1Activity.class));
return;
}
if (SpUtil.getUserBean().getMobile()==null||SpUtil.getUserBean().getMobile().equals("")){

View File

@@ -6,6 +6,8 @@ import android.graphics.Typeface;
import android.os.Bundle;
import android.util.SparseArray;
import android.view.View;
import android.view.animation.Animation;
import android.view.animation.AnimationUtils;
import androidx.activity.EdgeToEdge;
import androidx.annotation.Nullable;
@@ -19,6 +21,7 @@ import androidx.fragment.app.FragmentStatePagerAdapter;
import androidx.viewpager.widget.ViewPager;
import com.alibaba.android.arouter.facade.annotation.Route;
import com.alibaba.android.arouter.launcher.ARouter;
import com.example.modulevocal.R;
import com.example.modulevocal.conacts.MyRoomListContacts;
import com.example.modulevocal.databinding.RoomActivityMyRoomBinding;
@@ -29,6 +32,7 @@ import com.example.modulevocal.fragment.MyRoomListFragment;
import com.example.modulevocal.presenter.MyRoomPresenter;
import com.hjq.toast.ToastUtils;
import com.qxcm.moduleutil.activity.BaseMvpActivity;
import com.qxcm.moduleutil.base.CommonAppContext;
import com.qxcm.moduleutil.bean.AttentionResp;
import com.qxcm.moduleutil.bean.ManageRoomResp;
import com.qxcm.moduleutil.bean.MyCpRoom;
@@ -37,6 +41,7 @@ import com.qxcm.moduleutil.bean.MyRoomBean;
import com.qxcm.moduleutil.bean.UserBean;
import com.qxcm.moduleutil.bean.UserInfo;
import com.qxcm.moduleutil.utils.ARouteConstants;
import com.qxcm.moduleutil.utils.ImageLoader;
import com.qxcm.moduleutil.utils.PermissionCallback;
import com.qxcm.moduleutil.utils.PermissionUtil;
import com.qxcm.moduleutil.utils.SpUtil;
@@ -62,7 +67,7 @@ public class MyRoomActivity extends BaseMvpActivity<MyRoomPresenter, RoomActivit
@Override
protected void initData() {
mBinding.viewPager.setAdapter(new MyFragmentAdapter(getSupportFragmentManager()));
mBinding.viewPager.setOffscreenPageLimit(1);
mBinding.viewPager.setOffscreenPageLimit(0);
mBinding.tvCharm.setOnClickListener(v -> {
resetTab(0);
});
@@ -194,6 +199,27 @@ public class MyRoomActivity extends BaseMvpActivity<MyRoomPresenter, RoomActivit
initListener();
}
@Override
protected void onResume() {
super.onResume();
boolean b = CommonAppContext.getInstance().isPlaying;
if (b) {
ImageLoader.loadHead(MyRoomActivity.this, mBinding.riv, CommonAppContext.getInstance().playCover);
mBinding.riv.postDelayed(mRivAnimationTask, 1000);
mBinding.ll.setVisibility(View.VISIBLE);
} else {
mBinding.ll.setVisibility(View.INVISIBLE);
}
if (CommonAppContext.getInstance().isPlaying && CommonAppContext.getInstance().isShow) {
ARouter.getInstance().build(ARouteConstants.ROOM_DETAILS).withString("form", "首页").withString("roomId", CommonAppContext.getInstance().playId).navigation();
}
}
private final Runnable mRivAnimationTask = () -> {
Animation rivRotateAnimation = AnimationUtils.loadAnimation(MyRoomActivity.this, com.qxcm.moduleutil.R.anim.rotate_anim);
mBinding.riv.startAnimation(rivRotateAnimation);
};
private void initListener() {
mBinding.topBar.addIntentListener(new CustomTopBar.OnCallBackRightIcon() {
@Override
@@ -208,7 +234,8 @@ public class MyRoomActivity extends BaseMvpActivity<MyRoomPresenter, RoomActivit
// }
if (!SpUtil.getRealName()){
ToastUtils.show("实名认证后才能创建直播间");
startActivity(new Intent(MyRoomActivity.this, RealName1Activity.class));
ARouter.getInstance().build(ARouteConstants.REAL_NAME_ACTIVITY2).navigation();
// startActivity(new Intent(MyRoomActivity.this, RealName1Activity.class));
return;
}
startActivity(new Intent(MyRoomActivity.this,CreatedRoomActivity.class));

View File

@@ -3,6 +3,7 @@ package com.example.modulevocal.activity;
import android.content.Intent;
import android.view.View;
import com.alibaba.android.arouter.launcher.ARouter;
import com.example.modulevocal.R;
import com.example.modulevocal.conacts.RealDetailConacts;
import com.example.modulevocal.databinding.ActivityRealDeatilBinding;
@@ -10,6 +11,7 @@ import com.example.modulevocal.presenter.RealDetailPresenter;
import com.qxcm.moduleutil.activity.BaseAppCompatActivity;
import com.qxcm.moduleutil.activity.BaseMvpActivity;
import com.qxcm.moduleutil.bean.RealNameBean;
import com.qxcm.moduleutil.utils.ARouteConstants;
/**
*@author
@@ -41,7 +43,8 @@ public class RealDetailActivity extends BaseMvpActivity<RealDetailPresenter,Acti
private void onClick(View view) {
if (view.getId()==R.id.ll_1||view.getId()==R.id.ll_2){
startActivity(new Intent(this, RealName1Activity.class));
// startActivity(new Intent(this, RealName1Activity.class));
ARouter.getInstance().build(ARouteConstants.REAL_NAME_ACTIVITY2).navigation();
finish();
}
}

View File

@@ -1,166 +0,0 @@
package com.example.modulevocal.activity;
import android.graphics.Color;
import android.os.Bundle;
import android.text.SpannableString;
import android.text.Spanned;
import android.text.style.AbsoluteSizeSpan;
import android.text.style.ForegroundColorSpan;
import android.util.Log;
import android.view.View;
import androidx.activity.EdgeToEdge;
import androidx.appcompat.app.AppCompatActivity;
import androidx.core.graphics.Insets;
import androidx.core.view.ViewCompat;
import androidx.core.view.WindowInsetsCompat;
import com.alibaba.android.arouter.facade.annotation.Route;
import com.blankj.utilcode.util.RegexUtils;
import com.example.modulevocal.R;
import com.example.modulevocal.conacts.RealNameConacts;
import com.example.modulevocal.databinding.ActivityRealNameBinding;
import com.example.modulevocal.presenter.RealNamePresenter;
import com.qxcm.moduleutil.activity.BaseMvpActivity;
import com.qxcm.moduleutil.bean.RealNameBean;
import com.qxcm.moduleutil.utils.ARouteConstants;
import com.qxcm.moduleutil.utils.SpUtil;
import com.tencent.cloud.huiyansdkface.facelight.api.WbCloudFaceContant;
import com.tencent.cloud.huiyansdkface.facelight.api.WbCloudFaceVerifySdk;
import com.tencent.cloud.huiyansdkface.facelight.api.listeners.WbCloudFaceVerifyLoginListener;
import com.tencent.cloud.huiyansdkface.facelight.api.listeners.WbCloudFaceVerifyResultListener;
import com.tencent.cloud.huiyansdkface.facelight.api.result.WbFaceError;
import com.tencent.cloud.huiyansdkface.facelight.api.result.WbFaceVerifyResult;
import com.tencent.cloud.huiyansdkface.facelight.process.FaceVerifyStatus;
/**
*@author qx
*@data 2025/7/15
*@description: 实名认证
*/
@Route(path = ARouteConstants.REAL_NAME_ACTIVITY)
public class RealName1Activity extends BaseMvpActivity<RealNamePresenter, ActivityRealNameBinding> implements RealNameConacts.View{
@Override
protected void initData() {
mBinding.topBar.setTitle("实名认证");
String fullText = "您知悉并同意应用提供者\n· 收集、使用您本人的身份信息和人脸图像\n· 向合法数据持有者核实您的身份信息\n· 本操作数据仅用于身份核实,安全可靠";
SpannableString spannable = new SpannableString(fullText);
int firstLineEnd = fullText.indexOf('\n');
if (firstLineEnd > 0) {
// 设置第一行字体大小和颜色
spannable.setSpan(
new AbsoluteSizeSpan(16, true), // 18sp基于 TextView 的 sp 值调整
0,
firstLineEnd,
Spanned.SPAN_EXCLUSIVE_EXCLUSIVE
);
spannable.setSpan(
new ForegroundColorSpan(Color.BLACK),
0,
firstLineEnd,
Spanned.SPAN_EXCLUSIVE_EXCLUSIVE
);
}
mBinding.tvAgreeTerms.setText(spannable);
mBinding.btnSubmit.setOnClickListener(this::onClick);
}
@Override
protected int getLayoutId() {
return R.layout.activity_real_name;
}
@Override
protected RealNamePresenter bindPresenter() {
return new RealNamePresenter(this, this);
}
@Override
public void realNameSuccess(RealNameBean msg) {
Bundle data = new Bundle();
WbCloudFaceVerifySdk.InputData inputData = new WbCloudFaceVerifySdk.InputData(
msg.getFaceId(),
msg.getOrderNo(),
msg.getAppid(),
msg.getApiVersion(),
msg.getNonce(),
msg.getUserid(),
msg.getSign(),
FaceVerifyStatus.Mode.GRADE,
msg.getLicence());
data.putSerializable(WbCloudFaceContant.INPUT_DATA, inputData);
//设置是否打开语音提示,默认关闭,此处设置为关闭
data.putBoolean(WbCloudFaceContant. PLAY_VOICE, true);
//避免用户快速点击导致二次登录,二次拉起刷脸等操作引起问题
WbCloudFaceVerifySdk.getInstance().
initAdvSdk(RealName1Activity.this, data, new WbCloudFaceVerifyLoginListener() {
@Override
public void onLoginSuccess () {
//登录成功,拉起 sdk 页面,由 FaceVerifyResultListener 返回刷脸结果
WbCloudFaceVerifySdk.getInstance().startWbFaceVerifySdk(RealName1Activity.this, new WbCloudFaceVerifyResultListener() {
@Override
public void onFinish(WbFaceVerifyResult result) {
if (result != null) {
if (result.isSuccess()) {
Log.d("@@@", "刷脸成功!");
SpUtil.setRealName(true);
MvpPre.realNameResult(result.getOrderNo());
} else {
Log.d("@@@", "刷脸失败!");
}
}
//刷脸结束后,及时释放资源
WbCloudFaceVerifySdk.getInstance().release();
}
});
}
@Override
public void onLoginFailed (WbFaceError error){
Log.d("@@@", "刷脸失败!");
//刷脸结束后,及时释放资源
WbCloudFaceVerifySdk.getInstance().release();
}
});
}
@Override
public void sendCodeSuccess() {
finish();
}
private void onClick(View view) {
if (view.getId()== R.id.btnSubmit){
if (mBinding.edName.getText().toString().isEmpty()){
com.blankj.utilcode.util.ToastUtils.showShort("请输入姓名");
return;
}
if (mBinding.edPassword.getText().toString().isEmpty()){
com.blankj.utilcode.util.ToastUtils.showShort("请输入身份证号");
return;
}
if (RegexUtils.isIDCard18Exact(mBinding.edPassword.getText().toString())) {
if (mBinding.btnSubmit.getText().toString().equals("下一步")) {
mBinding.stepNum1.setBackground(getResources().getDrawable(com.qxcm.moduleutil.R.mipmap.num_11));
mBinding.stepNum2.setBackground(getResources().getDrawable(com.qxcm.moduleutil.R.mipmap.num_2));
// mBinding.l1.setVisibility(View.GONE);
// mBinding.l2.setVisibility(View.VISIBLE);
// mBinding.btnSubmit.setText("立即认证");
MvpPre.realName(mBinding.edName.getText().toString(),mBinding.edPassword.getText().toString());
} else {
SpUtil.setRealName(true);
finish();
}
}else {
com.blankj.utilcode.util.ToastUtils.showShort("请输入正确的身份证号");
return;
}
}
}
}

View File

@@ -2,8 +2,6 @@ package com.example.modulevocal.activity;
import static com.qxcm.moduleutil.utils.permission.PermissionUtils.TAG;
import android.content.Intent;
import android.net.Uri;
import android.text.TextUtils;
import android.view.View;
@@ -11,13 +9,9 @@ import androidx.appcompat.app.AlertDialog;
import androidx.recyclerview.widget.GridLayoutManager;
import androidx.recyclerview.widget.LinearLayoutManager;
import com.alibaba.fastjson.JSON;
import com.blankj.utilcode.util.ToastUtils;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.chad.library.adapter.base.BaseViewHolder;
import com.example.modulevocal.R;
import com.example.modulevocal.adapter.PayMethodAdapter;
import com.orhanobut.logger.Logger;
import com.qxcm.moduleutil.adapter.PayMethodAdapter;
import com.qxcm.moduleutil.adapter.BalanceRechargeAdapter;
import com.example.modulevocal.conacts.RechargeConactos;
import com.example.modulevocal.databinding.ActivityRechargeBinding;
@@ -28,22 +22,14 @@ import com.qxcm.moduleutil.bean.AppPay;
import com.qxcm.moduleutil.bean.BindType;
import com.qxcm.moduleutil.bean.RechargeBean;
import com.qxcm.moduleutil.bean.WalletBean;
import com.qxcm.moduleutil.bean.WalletConfig;
import com.qxcm.moduleutil.utils.ImageUtils;
import com.qxcm.moduleutil.utils.SpUtil;
import com.qxcm.moduleutil.widget.PaymentUtil;
import com.tencent.liteav.base.Log;
import com.tencent.mm.opensdk.constants.ConstantsAPI;
import com.tencent.mm.opensdk.modelbase.BaseReq;
import com.tencent.mm.opensdk.modelbase.BaseResp;
import com.tencent.mm.opensdk.modelpay.PayReq;
import com.tencent.mm.opensdk.openapi.IWXAPI;
import com.tencent.mm.opensdk.openapi.IWXAPIEventHandler;
import com.tencent.mm.opensdk.openapi.SendReqCallback;
import com.tencent.mm.opensdk.openapi.WXAPIFactory;
import com.tencent.mm.opensdk.utils.ILog;
import java.net.URLEncoder;
import java.util.ArrayList;
import java.util.List;
@@ -75,7 +61,7 @@ public class RechargeActivity extends BaseMvpActivity<RechargePresenter, Activit
// mBinding.rlThreePay.setOnClickListener(this::onClick);
mBinding.recycleView1.setLayoutManager(new LinearLayoutManager(this, LinearLayoutManager.VERTICAL, false));
bindTypeAdapter = new PayMethodAdapter(R.layout.item_bind_type);
bindTypeAdapter = new PayMethodAdapter(com.qxcm.moduleutil.R.layout.item_bind_type);
mBinding.recycleView1.setAdapter(bindTypeAdapter);
bindTypeAdapter.setOnItemClickListener((adapter, view, position) -> {
@@ -91,8 +77,11 @@ public class RechargeActivity extends BaseMvpActivity<RechargePresenter, Activit
private void onClick(View view) {
if (view.getId() == R.id.tv_payment) {
if (money.equals("0")) {
ToastUtils.showShort("请选择充值金额");
return;
money=mBinding.etCustomAmount.getText().toString().trim();
if (TextUtils.isEmpty(money)) {
ToastUtils.showShort("请选择充值金额");
return;
}
}
// if (Double.valueOf(money) < 6) {
// ToastUtils.showShort("最低充值6元以上");
@@ -132,7 +121,7 @@ public class RechargeActivity extends BaseMvpActivity<RechargePresenter, Activit
public void onClick(RechargeBean rechargeBean) {
money = rechargeBean.getMoney();
coin = rechargeBean.getCoins();
mBinding.tvPayment.setText(String.format("立即支付(%s元)", money));
// mBinding.tvPayment.setText(String.format("立即支付(%s元)", money));
}
});
rechargeAdapter.setInputBoxVisibilityListener(new BalanceRechargeAdapter.InputBoxVisibilityListener() {

View File

@@ -43,9 +43,9 @@ import java.util.Locale;
import java.util.Set;
/**
*@author qx
*@data 2025/5/15
*@description:房间明细
* @author qx
* @data 2025/5/15
* @description:房间明细
*/
@Route(path = ARouteConstants.MY_ROOM_DETAILS)
public class RoomDetailsActivity extends BaseMvpActivity<RoomDetailsPresenter, ActivityRoomDetailsBinding> implements MyRoomListContacts.DeatilsView {
@@ -57,16 +57,14 @@ public class RoomDetailsActivity extends BaseMvpActivity<RoomDetailsPresenter, A
private String stime = "";
private String etime = "";
Set<String> loadedUserIds = new HashSet<>();
Set<String> loadedUserIds2 = new HashSet<>();
public int type;
@Override
protected void initData() {
MvpPre.getCharmList(roomId, "", "", "1", type);
mBinding.rl3.setOnClickListener(v -> {
DoubleTimePickerBottomSheet dialog = new DoubleTimePickerBottomSheet();
dialog.setOnTimeRangeSelectedListener((startDate, endDate) -> {
// 处理选择的时间范围
@@ -76,33 +74,12 @@ public class RoomDetailsActivity extends BaseMvpActivity<RoomDetailsPresenter, A
Log.d("SelectedTime", "结束时间:" + sdf.format(endDate));
// mBinding.tv22.setText(sdf.format(endDate));
stime=sdf.format(startDate);
etime=sdf.format(endDate);
stime = sdf.format(startDate);
etime = sdf.format(endDate);
MvpPre.getCharmList(roomId, stime, etime, currentPage + "", type);
});
dialog.show(getSupportFragmentManager(), "DoubleTimePicker");
// Calendar c = Calendar.getInstance();
// // 最后一个false表示不显示日期如果要显示日期最后参数可以是true或者不用输入
// new DoubleDatePickerDialog(this, 0, new DoubleDatePickerDialog.OnDateSetListener() {
//
// @Override
// public void onDateSet(DatePicker startDatePicker, int startYear, int startMonthOfYear,
// int startDayOfMonth, DatePicker endDatePicker, int endYear, int endMonthOfYear,
// int endDayOfMonth) {
//
// stime = String.format("%d-%d-%d", startYear,
// startMonthOfYear + 1, startDayOfMonth);
// etime = String.format("%d-%d-%d", endYear,
// endMonthOfYear + 1, endDayOfMonth);
// currentPage = 1;
// loadedUserIds = new HashSet<>();
// MvpPre.getCharmList(roomId, stime, etime, currentPage + "", type);
// }
//
// }, c.get(Calendar.YEAR), c.get(Calendar.MONTH), c.get(Calendar.DATE), true).show();
});
}
@@ -157,33 +134,34 @@ public class RoomDetailsActivity extends BaseMvpActivity<RoomDetailsPresenter, A
}
});
mBinding.topBar.setRightText("补贴明细");
mBinding.topBar.setRightColor(Color.parseColor("#FF8ACC"));
mBinding.topBar.setRightTxtVisible(true);
mBinding.topBar.setRightSize(12);
// mBinding.topBar.setRightText("补贴明细");
// mBinding.topBar.setRightColor(Color.parseColor("#FF8ACC"));
// mBinding.topBar.setRightTxtVisible(true);
// mBinding.topBar.setRightSize(12);
}
@Override
public void setList(RoomDetails list) {
mBinding.tv3.setText( list.getTotal_earning()+"");
mBinding.tv5.setText(list.getTotal_amount()+"");
if (list.getList() != null && !list.getList().isEmpty() && list.getList().size() > 0) {
List<BaseMultiItemEntity> data = new ArrayList<>();
mBinding.tv3.setText(list.getTotal_earning() + "");
mBinding.tv5.setText(list.getTotal_amount() + "");
if (list.getList() != null && !list.getList().isEmpty()) { // size() > 0 是多余的,因为 isEmpty() 已经检查了是否为空
List<BaseMultiItemEntity> newData = new ArrayList<>();
for (int i = 0; i < list.getList().size(); i++) {
String time = list.getList().get(i).getTime();
if (!loadedUserIds.contains(time)) {
RoomDeatailList r = new RoomDeatailList();
r.setTotal_price(list.getList().get(i).getTotal_price());
r.setTotal_earning(list.getList().get(i).getTotal_earning());
r.setTime(list.getList().get(i).getTime());
data.add(r);
loadedUserIds.add(time);
RoomDeatailList r = new RoomDeatailList();
r.setTotal_price(list.getList().get(i).getTotal_price());
r.setTotal_earning(list.getList().get(i).getTotal_earning());
r.setTime(list.getList().get(i).getTime());
r.setSticky(true);
// 确保不重复添加
if (!loadedUserIds.contains(r.getTime())) {
newData.add(r);
loadedUserIds.add(r.getTime());
}
List<RoomDeatil> roomDeatils = new ArrayList<>();
for (int j = 0; j < list.getList().get(i).getList().size(); j++) {
List<RoomDeatil> list1 = new ArrayList<>();
RoomDeatil d = new RoomDeatil();
d.setSender_avatar(list.getList().get(i).getList().get(j).getSender_avatar());
d.setSender_nickname(list.getList().get(i).getList().get(j).getSender_nickname());
@@ -193,18 +171,27 @@ public class RoomDetailsActivity extends BaseMvpActivity<RoomDetailsPresenter, A
d.setTotal_price(list.getList().get(i).getList().get(j).getTotal_price());
d.setTime(list.getList().get(i).getList().get(j).getTime());
d.setEarning(list.getList().get(i).getList().get(j).getEarning());
list1.add(d);
data.addAll(list1);
r.setSticky(false);
roomDeatils.add(d);
}
// 将 roomDeatils 中的所有 RoomDeatil 对象添加到 newData 中
newData.addAll(roomDeatils);
}
// if (currentPage == 1) {
adapter.setNewData(data);
// } else {
// adapter.addData(data);
// }
adapter.notifyItemInserted(data.size() - 1);
mBinding.rv.requestLayout(); // 请求重新布局
finishRefresh();
if (currentPage == 1) {
adapter.setNewData(newData);
} else {
adapter.addData(newData);
}
// 通知适配器数据已改变
adapter.notifyDataSetChanged();
// 重新布局
mBinding.rv.requestLayout();
} else {
adapter.setNewData(null);
}
}

View File

@@ -8,6 +8,7 @@ import android.view.View;
import androidx.appcompat.app.AlertDialog;
import com.alibaba.android.arouter.launcher.ARouter;
import com.blankj.utilcode.util.FileUtils;
import com.blankj.utilcode.util.ToastUtils;
import com.example.modulevocal.R;
@@ -19,6 +20,7 @@ import com.qxcm.moduleutil.activity.WebViewActivity;
import com.qxcm.moduleutil.base.CommonAppContext;
import com.qxcm.moduleutil.bean.ConfigBean;
import com.qxcm.moduleutil.dialog.RealNameDialog;
import com.qxcm.moduleutil.utils.ARouteConstants;
import com.qxcm.moduleutil.utils.SpUtil;
import com.qxcm.moduleutil.utils.config.ConfigManager;
import com.qxcm.moduleutil.utils.config.EnvironmentEnum;
@@ -75,7 +77,8 @@ public class SettingActivity extends BaseMvpActivity<SettingPresenter, ActivityS
realNameDialog.show();
realNameDialog.setOnDismissListener(dialog -> {
dialog.dismiss();
startActivity(new Intent(SettingActivity.this, RealName1Activity.class));
ARouter.getInstance().build(ARouteConstants.REAL_NAME_ACTIVITY2).navigation();
// startActivity(new Intent(SettingActivity.this, RealName1Activity.class));
});
}
} else if (view.getId() == R.id.ll_qhch) {

View File

@@ -12,14 +12,11 @@ import com.example.moduletablayout.listener.CustomTabEntity;
import com.example.modulevocal.R;
import com.example.modulevocal.conacts.UserHomepageConacts;
import com.example.modulevocal.databinding.ActivityUserHomepageBinding;
import com.example.modulevocal.fragment.UserGiftWallFragment;
import com.example.modulevocal.fragment.UserHomepageFragment;
import com.example.modulevocal.presenter.UserHomepagePresenter;
import com.qxcm.moduleutil.activity.BaseMvpActivity;
import com.qxcm.moduleutil.adapter.MyFragmentPagerAdapter;
import com.qxcm.moduleutil.bean.CircleListBean;
import com.qxcm.moduleutil.bean.PhotoWallResp;
import com.qxcm.moduleutil.bean.UserHomeResp;
import com.qxcm.moduleutil.bean.UserInfo;
import com.qxcm.moduleutil.bean.XBannerData;
import com.qxcm.moduleutil.utils.ARouteConstants;
@@ -40,6 +37,10 @@ import java.util.List;
public class UserHomepageActivity extends BaseMvpActivity<UserHomepagePresenter, ActivityUserHomepageBinding> implements UserHomepageConacts.View{
@Autowired
String userId;
@Autowired
int type;//判断是从哪里进行的跳转
public String from;
private ArrayList<CustomTabEntity> titles = new ArrayList<>();
@@ -75,8 +76,6 @@ public class UserHomepageActivity extends BaseMvpActivity<UserHomepagePresenter,
@Override
public void setUserDetails(UserInfo data) {
SpUtil.saveUserInfo(data);
List<String> homeBgimages = new ArrayList<>();
if (!TextUtils.isEmpty(data.getHome_bgimages())){
homeBgimages = Arrays.asList(data.getHome_bgimages().split(","));
@@ -103,7 +102,7 @@ public class UserHomepageActivity extends BaseMvpActivity<UserHomepagePresenter,
}
});
List<Fragment> fragments = new ArrayList<>();
fragments.add(UserHomepageFragment.newInstance(userId));
fragments.add(UserHomepageFragment.newInstance(userId,type));
mBinding.viewPager.setAdapter(new MyFragmentPagerAdapter(fragments, getSupportFragmentManager()));
}

View File

@@ -2,31 +2,23 @@ package com.example.modulevocal.activity;
import android.content.Intent;
import android.graphics.Color;
import android.os.Bundle;
import android.os.CountDownTimer;
import android.text.Editable;
import android.text.InputFilter;
import android.text.TextUtils;
import android.text.TextWatcher;
import android.text.method.DigitsKeyListener;
import android.view.KeyEvent;
import android.view.View;
import android.widget.EditText;
import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast;
import androidx.activity.EdgeToEdge;
import androidx.appcompat.app.AlertDialog;
import androidx.appcompat.app.AppCompatActivity;
import androidx.core.graphics.Insets;
import androidx.core.view.ViewCompat;
import androidx.core.view.WindowInsetsCompat;
import androidx.recyclerview.widget.LinearLayoutManager;
import com.alibaba.android.arouter.facade.annotation.Route;
import com.example.modulevocal.R;
import com.example.modulevocal.adapter.PayMethodAdapter;
import com.qxcm.moduleutil.adapter.PayMethodAdapter;
import com.example.modulevocal.conacts.WithdrawalConacts;
import com.example.modulevocal.databinding.ActivityWithdrawalBinding;
import com.example.modulevocal.presenter.WithdrawalPresenter;
@@ -66,7 +58,7 @@ public class WithdrawalActivity extends BaseMvpActivity<WithdrawalPresenter, Act
});
mBinding.recycleView.setLayoutManager(new LinearLayoutManager(this, LinearLayoutManager.VERTICAL, false));
bindTypeAdapter = new PayMethodAdapter(R.layout.item_bind_type);
bindTypeAdapter = new PayMethodAdapter(com.qxcm.moduleutil.R.layout.item_bind_type);
mBinding.recycleView.setAdapter(bindTypeAdapter);
bindTypeAdapter.setOnItemClickListener((adapter, view, position) -> {

View File

@@ -52,7 +52,7 @@ public class BlackAdapter extends BaseQuickAdapter<BlackUserBean, BaseViewHolder
// 根据 type 设置图片资源
// 根据 type 和 status 设置图片资源
if (item.getType() == 0) { // 关注
if (item.getIs_follow() == 1) {
if (item.getIs_follow() == 0) {
imageView.setImageResource(com.qxcm.moduleutil.R.mipmap.gz);
} else {
imageView.setImageResource(com.qxcm.moduleutil.R.mipmap.yigz);
@@ -60,7 +60,7 @@ public class BlackAdapter extends BaseQuickAdapter<BlackUserBean, BaseViewHolder
} else if (item.getType() == 1) { // 黑名单
imageView.setImageResource(com.qxcm.moduleutil.R.mipmap.yic);
} else if (item.getType() == 2) { // 粉丝
if (item.getIs_follow() == 1) {
if (item.getIs_follow() == 0) {
imageView.setImageResource(com.qxcm.moduleutil.R.mipmap.hg);
} else {
imageView.setImageResource(com.qxcm.moduleutil.R.mipmap.yigz);

View File

@@ -6,11 +6,12 @@ import com.chad.library.adapter.base.BaseQuickAdapter;
import com.chad.library.adapter.base.BaseViewHolder;
import com.example.modulevocal.R;
import com.qxcm.moduleutil.bean.AttentionResp;
import com.qxcm.moduleutil.bean.MyRoomBean;
import com.qxcm.moduleutil.utils.ImageUtils;
import java.util.List;
public class ChatRoomMyFollowAdapter extends BaseQuickAdapter<AttentionResp, BaseViewHolder> {
public class ChatRoomMyFollowAdapter extends BaseQuickAdapter<MyRoomBean, BaseViewHolder> {
private int index = -1;
@@ -19,56 +20,13 @@ public class ChatRoomMyFollowAdapter extends BaseQuickAdapter<AttentionResp, Bas
}
@Override
protected void convert(BaseViewHolder helper, AttentionResp item) {
// ImageUtils.loadGift(helper.getView(R.id.iv_hot), ImageUtils.ANIM);
// ImageUtils.loadHeadCC(item.getRoomPicture(), helper.getView(com.qpyy.module.index.R.id.riv_user_head));
// if (TextUtils.isEmpty(item.getLabel_icon())) {
// helper.setGone(com.qpyy.module.index.R.id.iv_room_labe, false);
// } else {
// helper.setGone(com.qpyy.module.index.R.id.iv_room_labe, true);
// ImageUtils.loadImageView(item.getLabel_icon(), helper.getView(com.qpyy.module.index.R.id.iv_room_labe));
// }
// helper.setText(com.qpyy.module.index.R.id.tv_room_name, item.getRoom_name());
// helper.setText(com.qpyy.module.index.R.id.tv_room_id, "ID: " + item.getRoom_code());
// helper.setText(com.qpyy.module.index.R.id.tv_popularity, item.getPopularity());
// helper.addOnClickListener(com.qpyy.module.index.R.id.tv_clean);
// helper.setVisible(com.qpyy.module.index.R.id.rl_lock, item.getLocked() == 1);
// if (helper.getAdapterPosition() % 3 == 1) {
// helper.setBackgroundRes(com.qpyy.module.index.R.id.iv_follow_bg, index == helper.getAdapterPosition() ? com.qpyy.module.index.R.mipmap.index_follow_bg_tow_select : com.qpyy.module.index.R.mipmap.index_follow_bg_tow_normal);
// } else if (helper.getAdapterPosition() % 3 == 2) {
// helper.setBackgroundRes(com.qpyy.module.index.R.id.iv_follow_bg,index == helper.getAdapterPosition()? com.qpyy.module.index.R.mipmap.index_follow_bg_three_select: com.qpyy.module.index.R.mipmap.index_follow_bg_three_normal);
// } else {
// helper.setBackgroundRes(com.qpyy.module.index.R.id.iv_follow_bg, index == helper.getAdapterPosition()? com.qpyy.module.index.R.mipmap.index_follow_bg_one_select : com.qpyy.module.index.R.mipmap.index_follow_bg_one_normal);
// }
// if (index == helper.getAdapterPosition()) {
// helper.getView(com.qpyy.module.index.R.id.tv_clean).setVisibility(View.VISIBLE);
// } else {
// helper.getView(com.qpyy.module.index.R.id.tv_clean).setVisibility(View.GONE);
// }
ImageUtils.loadHeadCC(item.getRoomPicture(), helper.getView(R.id.iv_follow_bg));
// if (TextUtils.isEmpty(item.getLabel_icon())) {
// helper.setGone(R.id.iv_room_labe, false);
// } else {
// helper.setGone(R.id.iv_room_labe, true);
// ImageUtils.loadImageView(item.getLabel_icon(), helper.getView(R.id.iv_room_labe));
// }
if (item.getLabel_id().equals("23")){
helper.setImageResource(R.id.iv_type, com.qxcm.moduleutil.R.mipmap.diang_c);
}else if (item.getLabel_id().equals("108")){
helper.setImageResource(R.id.iv_type, com.qxcm.moduleutil.R.mipmap.diang_c);
}else if (item.getLabel_id().equals("101")){
helper.setImageResource(R.id.iv_type, com.qxcm.moduleutil.R.mipmap.youxi);
}else if (item.getLabel_id().equals("120")){//女神
helper.setImageResource(R.id.iv_type, com.qxcm.moduleutil.R.mipmap.nvshen);
}else if (item.getLabel_id().equals("121")){//男神
helper.setImageResource(R.id.iv_type, com.qxcm.moduleutil.R.mipmap.nans);
}
// ImageUtils.loadGift(helper.getView(R.id.iv_hot), ImageUtils.ANIM);
protected void convert(BaseViewHolder helper, MyRoomBean item) {
ImageUtils.loadHeadCC(item.getRoom_cover(), helper.getView(R.id.iv_follow_bg));
ImageUtils.loadHeadCC(item.getLabel_icon(), helper.getView(R.id.iv_type));
helper.setText(R.id.tv_name, item.getRoom_name());
helper.setText(R.id.tv_id, "ID: " + item.getRoom_id());
helper.setText(R.id.tv_num, item.getPopularity());
// helper.setText(R.id.tv_num, item.get());
ImageUtils.loadRes(com.qxcm.moduleutil.R.drawable.voice_play, helper.getView(R.id.iv_play));
}
public void setIndex(int index) {
@@ -77,7 +35,7 @@ public class ChatRoomMyFollowAdapter extends BaseQuickAdapter<AttentionResp, Bas
}
@Override
public void setNewData(@Nullable List<AttentionResp> data) {
public void setNewData(@Nullable List<MyRoomBean> data) {
index = -1;
super.setNewData(data);
}

View File

@@ -6,11 +6,12 @@ import com.chad.library.adapter.base.BaseQuickAdapter;
import com.chad.library.adapter.base.BaseViewHolder;
import com.example.modulevocal.R;
import com.qxcm.moduleutil.bean.ManageRoomResp;
import com.qxcm.moduleutil.bean.MyRoomBean;
import com.qxcm.moduleutil.utils.ImageUtils;
import java.util.List;
public class ChatRoomMyManageAdapter extends BaseQuickAdapter<ManageRoomResp, BaseViewHolder> {
public class ChatRoomMyManageAdapter extends BaseQuickAdapter<MyRoomBean, BaseViewHolder> {
private int index = -1;
@@ -19,30 +20,14 @@ public class ChatRoomMyManageAdapter extends BaseQuickAdapter<ManageRoomResp, Ba
}
@Override
protected void convert(BaseViewHolder helper, ManageRoomResp item) {
ImageUtils.loadHeadCC(item.getRoomPicture(), helper.getView(R.id.iv_follow_bg));
// if (TextUtils.isEmpty(item.getLabel_icon())) {
// helper.setGone(R.id.iv_room_labe, false);
// } else {
// helper.setGone(R.id.iv_room_labe, true);
// ImageUtils.loadImageView(item.getLabel_icon(), helper.getView(R.id.iv_room_labe));
// }
if (item.getLabel_id().equals("23")){
helper.setImageResource(R.id.iv_type, com.qxcm.moduleutil.R.mipmap.diang_c);
}else if (item.getLabel_id().equals("108")){
helper.setImageResource(R.id.iv_type, com.qxcm.moduleutil.R.mipmap.diang_c);
}else if (item.getLabel_id().equals("101")){
helper.setImageResource(R.id.iv_type, com.qxcm.moduleutil.R.mipmap.youxi);
}else if (item.getLabel_id().equals("120")){//女神
helper.setImageResource(R.id.iv_type,com.qxcm.moduleutil.R.mipmap.nvshen);
}else if (item.getLabel_id().equals("121")){//男神
helper.setImageResource(R.id.iv_type, com.qxcm.moduleutil.R.mipmap.nans);
}
protected void convert(BaseViewHolder helper, MyRoomBean item) {
ImageUtils.loadHeadCC(item.getRoom_cover(), helper.getView(R.id.iv_follow_bg));
ImageUtils.loadHeadCC(item.getLabel_icon(), helper.getView(R.id.iv_type));
// ImageUtils.loadGift(helper.getView(R.id.iv_hot), ImageUtils.ANIM);
helper.setText(R.id.tv_name, item.getRoom_name());
helper.setText(R.id.tv_id, "ID: " + item.getRoom_id());
helper.setText(R.id.tv_num, item.getPopularity());
// helper.setText(R.id.tv_num, item.get());
ImageUtils.loadRes(com.qxcm.moduleutil.R.drawable.voice_play, helper.getView(R.id.iv_play));
// }
}
@@ -52,7 +37,7 @@ public class ChatRoomMyManageAdapter extends BaseQuickAdapter<ManageRoomResp, Ba
}
@Override
public void setNewData(@Nullable List<ManageRoomResp> data) {
public void setNewData(@Nullable List<MyRoomBean> data) {
index = -1;
super.setNewData(data);
}

View File

@@ -197,6 +197,19 @@ public class MyCreateAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolde
return null;
}
// 定义接口
public interface OnImageClickListener {
void onImageClick(View view, RoomData roomData);
}
// 添加接口类型的变量
private static OnImageClickListener onImageClickListener;
// 提供一个方法来设置接口变量
public void setOnImageClickListener(OnImageClickListener listener) {
this.onImageClickListener = listener;
}
@Override
public int getItemCount() {
return viewItems.size();
@@ -223,6 +236,16 @@ public class MyCreateAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolde
}
imageView1.setImageResource(roomData.getTitleIcon());
imageView2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if (onImageClickListener != null) {
onImageClickListener.onImageClick(view, roomData);
}
}
});
}
}
@@ -257,7 +280,7 @@ public class MyCreateAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolde
}
tv_name.setText(item.getRoom_name());
tv_sy.setText(item.getToday_profit() + "");
tv_user_id.setText("ID: " + item.getRoom_id());
tv_user_id.setText("ID: " + item.getRoom_number());
String concernText = "关注:" + item.getFollow_num();
SpannableString spannableString = new SpannableString(concernText);
@@ -407,7 +430,7 @@ public class MyCreateAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolde
ImageUtils.loadHeadCC(item.getLabel_icon(), iv_type);
tv_name.setText(item.getRoom_name());
tv_num.setText(item.getPopularity());
tv_num.setText(item.getHot_value());
ImageUtils.loadRes(com.qxcm.moduleutil.R.drawable.voice_play, iv_play);
rl_root.setOnClickListener(new View.OnClickListener() {

View File

@@ -1,49 +0,0 @@
package com.example.modulevocal.adapter;
import android.view.View;
import android.widget.ImageView;
import androidx.core.content.ContextCompat;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.chad.library.adapter.base.BaseViewHolder;
import com.example.modulevocal.R;
import com.qxcm.moduleutil.bean.BindType;
import com.qxcm.moduleutil.utils.ImageUtils;
public class PayMethodAdapter extends BaseQuickAdapter<BindType.AllData, BaseViewHolder> {
private int selectedPosition = -1; // -1 表示未选中
public PayMethodAdapter(int layoutResId) {
super(layoutResId);
}
public void setSelectedPosition(int position) {
selectedPosition = position;
notifyDataSetChanged();
}
public int getSelectedPosition() {
return selectedPosition;
}
@Override
protected void convert(BaseViewHolder helper, BindType.AllData item) {
helper.setText(R.id.tv_name, item.getName());
ImageUtils.loadHeadCC(item.getIcon(), helper.getView(R.id.im_zfb));
// 设置选中状态样式
boolean isSelected = helper.getAdapterPosition() == selectedPosition;
View itemView = helper.itemView;
itemView.setSelected(isSelected);
ImageView imageView= helper.getView(R.id.iv_three_pay);
// 你可以在这里修改背景、边框、图标等来表示选中状态
if (isSelected) {
imageView.setImageLevel(1);
} else {
imageView.setImageLevel(0);
}
}
}

View File

@@ -22,16 +22,20 @@ public class RoomDetailsAdapter extends BaseMultiItemQuickAdapter<BaseMultiItemE
super(data);
addItemType(BaseMultiItemEntity.TYPE_A, R.layout.item_date_header);
addItemType(BaseMultiItemEntity.TYPE_B, R.layout.room_details_list);
// 开启吸顶功能
enableLoadMoreEndClick(false); // 禁用加载更多点击事件,防止冲突
setEnableLoadMore(false); // 禁用加载更多功能,防止冲突
}
@Override
protected void convert(BaseViewHolder helper, BaseMultiItemEntity item) {
switch (helper.getItemViewType()) {
case TYPE_DATE_HEADER:
RoomDeatailList roomDetailList = (RoomDeatailList) item;
helper.setText(R.id.tv6, roomDetailList.getTime());
helper.setText(R.id.tv8, roomDetailList.getTotal_earning() + "");
helper.setText(R.id.tve, roomDetailList.getTotal_price()+"");
helper.setText(R.id.tve, roomDetailList.getTotal_price() + "");
break;
case TYPE_GIFT_ITEM:
RoomDeatil item1 = (RoomDeatil) item;
@@ -49,6 +53,10 @@ public class RoomDetailsAdapter extends BaseMultiItemQuickAdapter<BaseMultiItemE
}
}
private boolean isSticky(RoomDeatailList item) {
// 返回是否为吸顶项的逻辑
return item.isSticky();
}
}

View File

@@ -0,0 +1,27 @@
package com.example.modulevocal.adapter;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.chad.library.adapter.base.BaseViewHolder;
import com.example.modulevocal.R;
import com.qxcm.moduleutil.bean.CombinedGiftBean;
import com.qxcm.moduleutil.bean.GiftUserWallBean;
import com.qxcm.moduleutil.utils.ImageLoader;
import java.util.List;
/**
* @Author lxj$
* @Time 2025年8月1日00:09:34$ $
* @Description 礼物墙中赠送用户显示的adapter$
*/
public class TopUsersAdapter extends BaseQuickAdapter<CombinedGiftBean.TopUsers, BaseViewHolder> {
public TopUsersAdapter(List<CombinedGiftBean.TopUsers> topUsersList) {
super(R.layout.item_top_user, topUsersList);
}
@Override
protected void convert(BaseViewHolder helper, CombinedGiftBean.TopUsers item) {
ImageLoader.loadImage(mContext, helper.getView(R.id.riv_user_avatar), item.getAvatar());
}
}

View File

@@ -1,12 +1,20 @@
package com.example.modulevocal.adapter;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.chad.library.adapter.base.BaseViewHolder;
import com.example.modulevocal.R;
import com.qxcm.moduleutil.bean.CombinedGiftBean;
import com.qxcm.moduleutil.bean.GiftBean;
import com.qxcm.moduleutil.bean.GiftUserWallBean;
import com.qxcm.moduleutil.utils.ImageLoader;
public class UserGiftWallAdapter extends BaseQuickAdapter<GiftBean, BaseViewHolder> {
import java.util.ArrayList;
import java.util.List;
public class UserGiftWallAdapter extends BaseQuickAdapter<CombinedGiftBean, BaseViewHolder> {
public UserGiftWallAdapter() {
@@ -14,11 +22,29 @@ public class UserGiftWallAdapter extends BaseQuickAdapter<GiftBean, BaseViewHold
}
@Override
protected void convert(BaseViewHolder helper, GiftBean item) {
// ImageLoader.loadImage(mContext, helper.getView(R.id.riv_user_head), item.getPicture());
// helper.setText(R.id.tv_gift_name, item.getName()).setText(R.id.tv_number, "x"+item.getNumber());
// helper.setText(R.id.tv_price33, item.getPrice());
}
protected void convert(BaseViewHolder helper, CombinedGiftBean item) {
helper.setText(R.id.tv_gift_name, item.getGift_name());
helper.setText(R.id.tv_gift_price, item.getGift_price());
ImageLoader.loadImage(mContext, helper.getView(R.id.iv_gift_pic), item.getBase_image());
if (item.is_liang()) {
// 点亮的礼物显示高亮和送礼物的用户
helper.setText(R.id.tv_number, "x" + item.getTop_users_count());
helper.setVisible(R.id.tv_number, true);
// helper.setVisible(R.id.riv_user_head, true);
helper.setVisible(R.id.iv_gift_pic_overlay, false);
// 显示送礼物的用户列表
RecyclerView recyclerView = helper.getView(R.id.rv_gift_user_list);
recyclerView.setLayoutManager(new LinearLayoutManager(mContext, LinearLayoutManager.HORIZONTAL, false));
TopUsersAdapter topUsersAdapter = new TopUsersAdapter(item.getTop_users());
recyclerView.setAdapter(topUsersAdapter);
} else {
// 未点亮的礼物只显示图片、名称和金额,不高亮
helper.setVisible(R.id.tv_number, false);
// helper.setVisible(R.id.riv_user_head, false);
helper.setVisible(R.id.iv_gift_pic_overlay, true);
// 隐藏送礼物的用户列表
helper.setVisible(R.id.rv_gift_user_list, false);
}
}
}

View File

@@ -34,7 +34,7 @@ public final class MyRoomListContacts {
}
public interface IRankingListPre extends IPresenter {
void getCharmList( int type);
void getCharmList( int type,String page);
void getWealthList( int type);

View File

@@ -6,6 +6,7 @@ import android.app.Activity;
import com.qxcm.moduleutil.activity.IPresenter;
import com.qxcm.moduleutil.activity.IView;
import com.qxcm.moduleutil.bean.GiftBean;
import com.qxcm.moduleutil.bean.GiftUserWallBean;
import java.util.List;
@@ -13,7 +14,7 @@ public final class UserGiftWallConacts {
public interface View extends IView<Activity> {
void setGiftWall(List<GiftBean> data);
void setGiftWall(GiftUserWallBean data);
}

View File

@@ -101,7 +101,8 @@ public class CirleListFragment extends BaseMvpFragment<UserHomepagePresenter, Fr
@Override
public void onZsClick(CircleListBean item) {
RewardGiftDialogFragment.show(String.valueOf(item.getId()),item.getUser_id()+"", getChildFragmentManager());
int position = cirleListAdapter.getData().indexOf(item);
RewardGiftDialogFragment.show(String.valueOf(item.getId()),item.getUser_id()+"",position, getChildFragmentManager());
}
@Override

View File

@@ -82,13 +82,15 @@ public class MyCreateFragment extends BaseMvpFragment<MyRoomPresenter, RoomFragm
@Override
protected void initData() {
if (type == MyCreateFragment.TYPE_CREATE) {
viewItems=new ArrayList<>();
MvpPre.getCharmList(0);//我创建的
} else if (type == MyCreateFragment.TYPE_HOST) {
MvpPre.getCharmList(1);
}
}
@Override
public void onResume() {
super.onResume();
viewItems = new ArrayList<>();
MvpPre.getCharmList(0,page+"");//我创建的
}
private void showDelFootDialog() {
@@ -112,119 +114,6 @@ public class MyCreateFragment extends BaseMvpFragment<MyRoomPresenter, RoomFragm
@Override
protected void initView() {
// mBinding.smartRefreshLayout.setOnRefreshLoadMoreListener(new OnRefreshLoadMoreListener() {
// @Override
// public void onLoadMore(@NonNull RefreshLayout refreshLayout) {
// page++;
// MvpPre.getMyFoot(page);
// }
//
// @Override
// public void onRefresh(@NonNull RefreshLayout refreshLayout) {
//// EventBus.getDefault().post(new BannerRefreshEvent());
// page = 1;
// MvpPre.getMyFoot(page);
// }
// });
// mBinding.ivDeleteFoot.setOnClickListener(new View.OnClickListener() {
// @Override
// public void onClick(View v) {
// showDelFootDialog();
// //A0404点击删除我的足迹
// }
// });
//
// mBinding.recycleViewFoot.setLayoutManager(new GridLayoutManager(getContext(), 2));
// mBinding.recycleViewFoot.setAdapter(mChatRoomMyFootAdapter = new ChatRoomMyFootAdapter());
// mChatRoomMyFootAdapter.bindToRecyclerView(mBinding.recycleViewFoot);
// CommonEmptyView commonEmptyView = new CommonEmptyView(getContext());
// commonEmptyView.setEmptyText("亲亲,你还没去过任何房间哦~赶快动起来吧!");
// commonEmptyView.setTextColor(getResources().getColor(com.qxcm.moduleutil.R.color.color_FFBDBDBC));
// mChatRoomMyFootAdapter.setEmptyView(commonEmptyView);
//
//
// mChatRoomMyFootAdapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() {
// @Override
// public void onItemClick(BaseQuickAdapter adapter, View view, int position) {
// MyFootResp item = mChatRoomMyFootAdapter.getItem(position);
// if (item != null) {
//// ARouter.getInstance().build(ARouteConstants.LIVE_ROOM).withString("form", "历史记录列表").withString("roomId", item.getRoom_id()).navigation();
// }
// }
// });
// mBinding.rvMyRoomList.setLayoutManager(new LinearLayoutManager(getContext()));
// mAdapter = new BaseQuickAdapter<MyRoomBean, BaseViewHolder>(R.layout.room_fragment_my_room_list, null) {
// @Override
// protected void convert(BaseViewHolder helper, MyRoomBean item) {
// if (item.getRoom_cover() == null || item.getRoom_cover().equals("")) {
// helper.setImageResource(R.id.riv, com.qxcm.moduleutil.R.mipmap.default_avatar);
// } else {
// ImageUtils.loadImageView(item.getRoom_cover(), helper.getView(R.id.riv));
// }
// if (item.getLabel_icon() != null) {
// ImageUtils.loadImageView(item.getLabel_icon(), helper.getView(R.id.iv_play));
// }
//
// helper.setText(R.id.tv_name, item.getRoom_name());
// helper.setText(R.id.tv_sy, item.getToday_profit() + "");
// helper.setText(R.id.tv_user_id, "ID: " + item.getRoom_id());
// if (type == MyRoomListFragment.TYPE_CREATE) {
// helper.setText(R.id.tv_bl, "今日收益");
// } else if (type == MyRoomListFragment.TYPE_HOST) {
// helper.setText(R.id.tv_bl, "收益分成比例: " + item.getEarnings_ratio() + "%");
// }
//
// String concernText = "关注:" + item.getFollow_num();
// SpannableString spannableString = new SpannableString(concernText);
// // 设置关注数字部分的颜色为黑色
// spannableString.setSpan(new ForegroundColorSpan(ContextCompat.getColor(getContext(), android.R.color.black)), 2, concernText.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
// helper.setText(R.id.tv_gz, spannableString);
//
// String concernText1 = "在线:" + item.getOnline_num();
// SpannableString spannableString1 = new SpannableString(concernText1);
// // 设置关注数字部分的颜色为黑色
// spannableString1.setSpan(new ForegroundColorSpan(ContextCompat.getColor(getContext(), android.R.color.black)), 2, concernText1.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
// helper.setText(R.id.tv_zx, spannableString1);
//
// String concernText2 = "访问:" + item.getVisit_num();
// SpannableString spannableString2 = new SpannableString(concernText2);
// // 设置关注数字部分的颜色为黑色
// spannableString2.setSpan(new ForegroundColorSpan(ContextCompat.getColor(getContext(), android.R.color.black)), 2, concernText2.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
// helper.setText(R.id.tv_fw, spannableString2);
//
// helper.getView(R.id.rl_mx).setOnClickListener(new View.OnClickListener() {
// @Override
// public void onClick(View v) {
// // TODO: 跳转到房间详情页面
//
// startActivity(new Intent(getContext(), RoomDetailsActivity.class));
//// ARouter.getInstance().build(ARouteConstants.MY_ROOM_DETAIL).withString("roomId", item.getRoom_id() + "").withInt("type",type ).navigation();
// }
// });
// helper.getView(R.id.cl_my_room_list).setOnClickListener(new View.OnClickListener() {//跳转房间
// @Override
// public void onClick(View v) {
// // TODO: 跳转到房间
// ARouter.getInstance().build(ARouteConstants.ROOM_DETAILS).withString("from", "我的界面").withString("roomId", item.getRoom_id() + "").navigation();
// }
// });
// switch (helper.getLayoutPosition() % 3) {
// case 0:
// helper.getView(R.id.cl_my_room_list).setBackgroundResource(com.qxcm.moduleutil.R.drawable.bg_room_cr_f4ff6);
// break;
// case 1:
// helper.getView(R.id.cl_my_room_list).setBackgroundResource(com.qxcm.moduleutil.R.drawable.bg_room_cr_f4ff6);
// break;
// case 2:
// helper.getView(R.id.cl_my_room_list).setBackgroundResource(com.qxcm.moduleutil.R.drawable.bg_room_cr_f4ff6);
// break;
// }
//
// }
// };
// mBinding.rvMyRoomList.setAdapter(mAdapter);
// mAdapter.bindToRecyclerView(mBinding.rvMyRoomList);
GridLayoutManager layoutManager = new GridLayoutManager(requireContext(), 2); // 最大支持 4 列
mBinding.rvMyRoomList.setLayoutManager(layoutManager);
@@ -251,6 +140,13 @@ public class MyCreateFragment extends BaseMvpFragment<MyRoomPresenter, RoomFragm
// adapter.bindToRecyclerView(mBinding.rvMyRoomList);
adapter.setOnImageClickListener(new MyCreateAdapter.OnImageClickListener() {
@Override
public void onImageClick(View view, RoomData roomData) {
showDelFootDialog();
}
});
}
@Override
@@ -266,27 +162,6 @@ public class MyCreateFragment extends BaseMvpFragment<MyRoomPresenter, RoomFragm
@Override
public void setList(List<MyRoomBean> list, int type) {
// TODO: 刷新列表
// if (type == MyCreateFragment.TYPE_CREATE) {
// if (list.isEmpty()) {
// mBinding.rvMyRoomList.setVisibility(View.GONE);
// mBinding.tvNoData.setVisibility(View.VISIBLE);
// } else {
// mBinding.rvMyRoomList.setVisibility(View.VISIBLE);
// mBinding.tvNoData.setVisibility(View.GONE);
// mAdapter.setNewData(list);
// }
//
// } else if (type == MyCreateFragment.TYPE_HOST) {
// if (list.isEmpty()) {
// mBinding.rvMyRoomList.setVisibility(View.GONE);
// mBinding.tvNoData.setVisibility(View.VISIBLE);
// } else {
// mBinding.rvMyRoomList.setVisibility(View.VISIBLE);
// mBinding.tvNoData.setVisibility(View.GONE);
// mAdapter.setNewData(list);
// }
//
// }
if (list != null) {
@@ -321,13 +196,13 @@ public class MyCreateFragment extends BaseMvpFragment<MyRoomPresenter, RoomFragm
// mChatRoomMyFootAdapter.addData(data);
// }
// }
if (data != null) {
RoomData roomData = new RoomData("我的足迹", com.qxcm.moduleutil.R.mipmap.footprint,com.qxcm.moduleutil.R.mipmap.dele_foot);
viewItems.add(new ViewItem(ViewItem.TYPE_TEXT, roomData));
for (MyFootResp item : data) {
viewItems.add(new ViewItem(ViewItem.TYPE_IMAGE_SELECTION, item));
if (data != null) {
RoomData roomData = new RoomData("历史足迹", com.qxcm.moduleutil.R.mipmap.footprint, com.qxcm.moduleutil.R.mipmap.dele_foot);
viewItems.add(new ViewItem(ViewItem.TYPE_TEXT, roomData));
for (MyFootResp item : data) {
viewItems.add(new ViewItem(ViewItem.TYPE_IMAGE_SELECTION, item));
}
}
}
adapter.submitList(viewItems);
}
@@ -350,7 +225,7 @@ public class MyCreateFragment extends BaseMvpFragment<MyRoomPresenter, RoomFragm
@Override
public void myCpRoom(List<MyCpRoom> list) {
if (list != null) {
RoomData roomData = new RoomData("我的电影房", com.qxcm.moduleutil.R.mipmap.diany,0);
RoomData roomData = new RoomData("我的电影房", com.qxcm.moduleutil.R.mipmap.diany, 0);
viewItems.add(new ViewItem(ViewItem.TYPE_TEXT, roomData));
for (MyCpRoom item : list) {
viewItems.add(new ViewItem(ViewItem.TYPE_GIFT, item));

View File

@@ -4,8 +4,10 @@ package com.example.modulevocal.fragment;
import android.os.Bundle;
import android.view.View;
import androidx.annotation.NonNull;
import androidx.recyclerview.widget.GridLayoutManager;
import com.alibaba.android.arouter.launcher.ARouter;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.example.modulevocal.R;
import com.example.modulevocal.adapter.ChatRoomMyFollowAdapter;
@@ -18,7 +20,10 @@ import com.qxcm.moduleutil.bean.ManageRoomResp;
import com.qxcm.moduleutil.bean.MyCpRoom;
import com.qxcm.moduleutil.bean.MyFootResp;
import com.qxcm.moduleutil.bean.MyRoomBean;
import com.qxcm.moduleutil.utils.ARouteConstants;
import com.qxcm.moduleutil.widget.CommonEmptyView;
import com.scwang.smartrefresh.layout.api.RefreshLayout;
import com.scwang.smartrefresh.layout.listener.OnRefreshLoadMoreListener;
import java.util.List;
@@ -29,6 +34,7 @@ public class MyFollowFragment extends BaseMvpFragment<MyRoomPresenter, RoomFragm
public static final int TYPE_GZ = 3;
private int type;
private ChatRoomMyFollowAdapter followAdapter;
private int page = 1;
public static MyFollowFragment newInstance(int type) {
MyFollowFragment fragment = new MyFollowFragment();
@@ -50,9 +56,9 @@ public class MyFollowFragment extends BaseMvpFragment<MyRoomPresenter, RoomFragm
}
@Override
protected void initData() {
if (type == MyFollowFragment.TYPE_GZ) {
MvpPre.getCharmList(3);
}
// if (type == MyFollowFragment.TYPE_GZ) {
MvpPre.getCharmList(3,page+"");
// }
}
@Override
@@ -68,12 +74,28 @@ public class MyFollowFragment extends BaseMvpFragment<MyRoomPresenter, RoomFragm
followAdapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() {
@Override
public void onItemClick(BaseQuickAdapter adapter, View view, int position) {
AttentionResp item = followAdapter.getItem(position);
MyRoomBean item = followAdapter.getItem(position);
if (item != null) {
// ARouter.getInstance().build(ARouteConstants.LIVE_ROOM).withString("form", "历史记录列表").withString("roomId", item.getRoom_id()).navigation();
ARouter.getInstance().build(ARouteConstants.ROOM_DETAILS).withString("from", "我的界面").withString("roomId", item.getRoom_id() + "").navigation();
}
}
});
mBinding.smartRefreshLayout.setOnRefreshLoadMoreListener(new OnRefreshLoadMoreListener() {
@Override
public void onLoadMore(@NonNull RefreshLayout refreshLayout) {
page++;
MvpPre.getCharmList(3,page+"");
}
@Override
public void onRefresh(@NonNull RefreshLayout refreshLayout) {
page = 1;
MvpPre.getCharmList(3,page+"");
}
});
}
@Override
@@ -88,6 +110,15 @@ public class MyFollowFragment extends BaseMvpFragment<MyRoomPresenter, RoomFragm
@Override
public void setList(List<MyRoomBean> list, int type) {
if (page==1){
if (list!=null){
followAdapter.setNewData(list);
}
}else {
if (list!=null) {
followAdapter.addData(list);
}
}
}
@@ -103,7 +134,8 @@ public class MyFollowFragment extends BaseMvpFragment<MyRoomPresenter, RoomFragm
@Override
public void finishRefresh() {
mBinding.smartRefreshLayout.finishRefresh();
mBinding.smartRefreshLayout.finishLoadMore();
}
@Override
@@ -113,7 +145,6 @@ public class MyFollowFragment extends BaseMvpFragment<MyRoomPresenter, RoomFragm
@Override
public void setAttentionListData(List<AttentionResp> attentionResps) {
followAdapter.setNewData(attentionResps);
}
@Override

View File

@@ -3,8 +3,10 @@ package com.example.modulevocal.fragment;
import android.os.Bundle;
import android.view.View;
import androidx.annotation.NonNull;
import androidx.recyclerview.widget.GridLayoutManager;
import com.alibaba.android.arouter.launcher.ARouter;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.example.modulevocal.R;
import com.example.modulevocal.adapter.ChatRoomMyManageAdapter;
@@ -17,7 +19,10 @@ import com.qxcm.moduleutil.bean.ManageRoomResp;
import com.qxcm.moduleutil.bean.MyCpRoom;
import com.qxcm.moduleutil.bean.MyFootResp;
import com.qxcm.moduleutil.bean.MyRoomBean;
import com.qxcm.moduleutil.utils.ARouteConstants;
import com.qxcm.moduleutil.widget.CommonEmptyView;
import com.scwang.smartrefresh.layout.api.RefreshLayout;
import com.scwang.smartrefresh.layout.listener.OnRefreshLoadMoreListener;
import java.util.List;
@@ -30,6 +35,7 @@ public class MyManageFragment extends BaseMvpFragment<MyRoomPresenter, RoomFragm
public static final int TYPE_GZ = 3;
private int type;
private ChatRoomMyManageAdapter manageAdapter;
private int page = 1;
public static MyManageFragment newInstance(int type) {
MyManageFragment fragment = new MyManageFragment();
@@ -53,9 +59,9 @@ public class MyManageFragment extends BaseMvpFragment<MyRoomPresenter, RoomFragm
@Override
protected void initData() {
if (type == MyManageFragment.TYPE_GL) {
MvpPre.getCharmList(2);
}
// if (type == MyManageFragment.TYPE_GL) {
MvpPre.getCharmList(2,page+"");
// }
}
@Override
@@ -70,12 +76,28 @@ public class MyManageFragment extends BaseMvpFragment<MyRoomPresenter, RoomFragm
manageAdapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() {
@Override
public void onItemClick(BaseQuickAdapter adapter, View view, int position) {
ManageRoomResp item = manageAdapter.getItem(position);
MyRoomBean item = manageAdapter.getItem(position);
if (item != null) {
// ARouter.getInstance().build(ARouteConstants.LIVE_ROOM).withString("form", "历史记录列表").withString("roomId", item.getRoom_id()).navigation();
ARouter.getInstance().build(ARouteConstants.ROOM_DETAILS).withString("from", "我的界面").withString("roomId", item.getRoom_id() + "").navigation();
}
}
});
mBinding.smartRefreshLayout.setOnRefreshLoadMoreListener(new OnRefreshLoadMoreListener() {
@Override
public void onLoadMore(@NonNull RefreshLayout refreshLayout) {
page++;
MvpPre.getCharmList(2,page+"");
}
@Override
public void onRefresh(@NonNull RefreshLayout refreshLayout) {
page = 1;
MvpPre.getCharmList(2,page+"");
}
});
}
@Override
@@ -90,7 +112,15 @@ public class MyManageFragment extends BaseMvpFragment<MyRoomPresenter, RoomFragm
@Override
public void setList(List<MyRoomBean> list, int type) {
if (page==1) {
if (list!=null) {
manageAdapter.setNewData(list);
}
}else {
if (list!=null) {
manageAdapter.addData(list);
}
}
}
@Override
@@ -105,12 +135,12 @@ public class MyManageFragment extends BaseMvpFragment<MyRoomPresenter, RoomFragm
@Override
public void finishRefresh() {
mBinding.smartRefreshLayout.finishRefresh();
mBinding.smartRefreshLayout.finishLoadMore();
}
@Override
public void setManageData(List<ManageRoomResp> data) {
manageAdapter.setNewData(data);
}
@Override

View File

@@ -11,6 +11,7 @@ import androidx.annotation.Nullable;
import androidx.core.content.ContextCompat;
import androidx.recyclerview.widget.LinearLayoutManager;
import com.alibaba.android.arouter.launcher.ARouter;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.chad.library.adapter.base.BaseViewHolder;
import com.example.modulevocal.R;
@@ -23,7 +24,10 @@ import com.qxcm.moduleutil.bean.ManageRoomResp;
import com.qxcm.moduleutil.bean.MyCpRoom;
import com.qxcm.moduleutil.bean.MyFootResp;
import com.qxcm.moduleutil.bean.MyRoomBean;
import com.qxcm.moduleutil.utils.ARouteConstants;
import com.qxcm.moduleutil.utils.ImageUtils;
import com.scwang.smartrefresh.layout.api.RefreshLayout;
import com.scwang.smartrefresh.layout.listener.OnRefreshLoadMoreListener;
import java.util.List;
@@ -37,6 +41,7 @@ public class MyRoomListFragment extends BaseMvpFragment<MyRoomPresenter, RoomFra
public static final int TYPE_HOST = 1;
private int type;
private BaseQuickAdapter<MyRoomBean, BaseViewHolder> mAdapter;
private int page = 1;
// TODO: Customize parameter initialization
@SuppressWarnings("unused")
@@ -73,11 +78,12 @@ public class MyRoomListFragment extends BaseMvpFragment<MyRoomPresenter, RoomFra
@Override
protected void initData() {
if (type == MyRoomListFragment.TYPE_CREATE) {
MvpPre.getCharmList(0);//我创建的
} else if (type == MyRoomListFragment.TYPE_HOST) {
MvpPre.getWealthList(1);
}
}
@Override
public void onResume() {
super.onResume();
MvpPre.getCharmList(1, page + "");
}
@Override
@@ -87,25 +93,27 @@ public class MyRoomListFragment extends BaseMvpFragment<MyRoomPresenter, RoomFra
mAdapter = new BaseQuickAdapter<MyRoomBean, BaseViewHolder>(R.layout.room_fragment_my_room_list, null) {
@Override
protected void convert(BaseViewHolder helper, MyRoomBean item) {
if (item.getRoom_cover() == null||item.getRoom_cover().equals("")) {
if (item.getRoom_cover() == null || item.getRoom_cover().equals("")) {
helper.setImageResource(R.id.riv, com.qxcm.moduleutil.R.mipmap.default_avatar);
} else {
ImageUtils.loadImageView(item.getRoom_cover(), helper.getView(R.id.riv));
}
if (item.getLabel_icon()!=null) {
if (item.getLabel_icon() != null) {
ImageUtils.loadImageView(item.getLabel_icon(), helper.getView(R.id.iv_play));
}
helper.setText(R.id.tv_name, item.getRoom_name());
helper.setText(R.id.tv_sy, item.getToday_income()+"");
helper.setText(R.id.tv_user_id, "ID: " + item.getRoom_id());
helper.setText(R.id.tv_sy, item.getToday_income() != null ? item.getToday_income() + "" : "0");
helper.setText(R.id.tv_user_id, "ID: " + item.getRoom_number());
if (type == MyRoomListFragment.TYPE_CREATE) {
helper.setText(R.id.tv_bl, "今日收益");
} else if (type == MyRoomListFragment.TYPE_HOST) {
helper.setText(R.id.tv_bl, "收益分成比例: " + item.getEarnings_ratio() + "%");
helper.setText(R.id.tv_bl, "收益分成比例: " + item.getRatio() + "%");
}
helper.getView(R.id.tv_room_bt).setVisibility(View.GONE);
helper.getView(R.id.im_sh).setVisibility(View.GONE);
String concernText = "关注:" + item.getFavorite_count();
String concernText = "关注:" + item.getFollow_num();
SpannableString spannableString = new SpannableString(concernText);
// 设置关注数字部分的颜色为黑色
spannableString.setSpan(new ForegroundColorSpan(ContextCompat.getColor(getContext(), android.R.color.black)), 2, concernText.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
@@ -117,7 +125,7 @@ public class MyRoomListFragment extends BaseMvpFragment<MyRoomPresenter, RoomFra
spannableString1.setSpan(new ForegroundColorSpan(ContextCompat.getColor(getContext(), android.R.color.black)), 2, concernText1.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
helper.setText(R.id.tv_zx, spannableString1);
String concernText2 = "访问:" + item.getCome_count();
String concernText2 = "访问:" + item.getVisit_num();
SpannableString spannableString2 = new SpannableString(concernText2);
// 设置关注数字部分的颜色为黑色
spannableString2.setSpan(new ForegroundColorSpan(ContextCompat.getColor(getContext(), android.R.color.black)), 2, concernText2.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
@@ -127,34 +135,49 @@ public class MyRoomListFragment extends BaseMvpFragment<MyRoomPresenter, RoomFra
@Override
public void onClick(View v) {
// TODO: 跳转到房间详情页面
// ARouter.getInstance().build(ARouteConstants.MY_ROOM_DETAIL).withString("roomId", item.getRoom_id() + "").withInt("type",type ).navigation();
ARouter.getInstance().build(ARouteConstants.MY_ROOM_DETAILS).withString("roomId", item.getRoom_id() + "").navigation();
}
});
helper.getView(R.id.cl_my_room_list).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO: 跳转到房间详情页面
ARouter.getInstance().build(ARouteConstants.ROOM_DETAILS).withString("from", "我的界面").withString("roomId", item.getRoom_id() + "").navigation();
// TODO: 跳转到房间详情页面
// ARouter.getInstance().build(ARouteConstants.LIVE_ROOM).withString("from", "我的界面").withString("roomId", item.getRoom_id() + "").navigation();
}
});
switch (helper.getLayoutPosition() % 3) {
case 0:
helper.getView(R.id.cl_my_room_list).setBackgroundResource(com.qxcm.moduleutil.R.mipmap.my_cr_room1);
break;
case 1:
helper.getView(R.id.cl_my_room_list).setBackgroundResource(com.qxcm.moduleutil.R.mipmap.my_croom2);
break;
case 2:
helper.getView(R.id.cl_my_room_list).setBackgroundResource(com.qxcm.moduleutil.R.mipmap.my_croom3);
break;
}
// switch (helper.getLayoutPosition() % 3) {
// case 0:
// helper.getView(R.id.cl_my_room_list).setBackgroundResource(com.qxcm.moduleutil.R.mipmap.my_cr_room1);
// break;
// case 1:
// helper.getView(R.id.cl_my_room_list).setBackgroundResource(com.qxcm.moduleutil.R.mipmap.my_croom2);
// break;
// case 2:
// helper.getView(R.id.cl_my_room_list).setBackgroundResource(com.qxcm.moduleutil.R.mipmap.my_croom3);
// break;
// }
}
};
mBinding.rvMyRoomList.setAdapter(mAdapter);
mAdapter.bindToRecyclerView(mBinding.rvMyRoomList);
mBinding.smartRefreshLayout.setOnRefreshLoadMoreListener(new OnRefreshLoadMoreListener() {
@Override
public void onLoadMore(@NonNull RefreshLayout refreshLayout) {
page++;
MvpPre.getCharmList(1, page + "");
}
@Override
public void onRefresh(@NonNull RefreshLayout refreshLayout) {
page = 1;
MvpPre.getCharmList(1, page + "");
}
});
}
@Override
@@ -169,9 +192,9 @@ public class MyRoomListFragment extends BaseMvpFragment<MyRoomPresenter, RoomFra
@Override
public void setList(List<MyRoomBean> list, int type) {
// TODO: 刷新列表
if (type == MyRoomListFragment.TYPE_CREATE) {
if (list.isEmpty()) {
if (page == 1) {
// TODO: 刷新列表
if (list==null || list.size() == 0) {
mBinding.rvMyRoomList.setVisibility(View.GONE);
mBinding.tvNoData.setVisibility(View.VISIBLE);
} else {
@@ -179,17 +202,10 @@ public class MyRoomListFragment extends BaseMvpFragment<MyRoomPresenter, RoomFra
mBinding.tvNoData.setVisibility(View.GONE);
mAdapter.setNewData(list);
}
} else if (type == MyRoomListFragment.TYPE_HOST) {
if (list.isEmpty()) {
mBinding.rvMyRoomList.setVisibility(View.GONE);
mBinding.tvNoData.setVisibility(View.VISIBLE);
} else {
mBinding.rvMyRoomList.setVisibility(View.VISIBLE);
mBinding.tvNoData.setVisibility(View.GONE);
mAdapter.setNewData(list);
}else {
if (list!=null) {
mAdapter.addData(list);
}
}
}
@@ -205,7 +221,8 @@ public class MyRoomListFragment extends BaseMvpFragment<MyRoomPresenter, RoomFra
@Override
public void finishRefresh() {
mBinding.smartRefreshLayout.finishRefresh();
mBinding.smartRefreshLayout.finishLoadMore();
}
@Override

View File

@@ -80,7 +80,7 @@ public class RevenueFragment extends BaseMvpFragment<RevenuePresenter, FragmentR
}
private void loadData() {
MvpPre.getRevenueData("1","50",type,"","",revenueType);
MvpPre.getRevenueData("1","50",revenueType,"","",type);
}
@Override

View File

@@ -11,10 +11,13 @@ import com.example.modulevocal.conacts.UserGiftWallConacts;
import com.example.modulevocal.databinding.MeFagmentUserGiftWallBinding;
import com.example.modulevocal.presenter.UserGiftWallPresenter;
import com.qxcm.moduleutil.base.BaseMvpFragment;
import com.qxcm.moduleutil.bean.CombinedGiftBean;
import com.qxcm.moduleutil.bean.GiftBean;
import com.qxcm.moduleutil.bean.GiftUserWallBean;
import com.qxcm.moduleutil.widget.pagerecyclerview.PagerGridLayoutManager;
import com.qxcm.moduleutil.widget.pagerecyclerview.PagerGridSnapHelper;
import java.util.ArrayList;
import java.util.List;
/**
@@ -50,13 +53,14 @@ public class UserGiftWallFragment extends BaseMvpFragment<UserGiftWallPresenter,
@Override
protected void initView() {
PagerGridLayoutManager layoutManager = new PagerGridLayoutManager(2, 4, PagerGridLayoutManager.HORIZONTAL);
mUserGiftWallAdapter = new UserGiftWallAdapter();
PagerGridLayoutManager layoutManager = new PagerGridLayoutManager(6, 4, PagerGridLayoutManager.VERTICAL);
mBinding.recyclerView.setLayoutManager(layoutManager);
// mBinding.recyclerView.setOnFlingListener(null);
mBinding.recyclerView.setOnFlingListener(null);
// 设置滚动辅助工具
PagerGridSnapHelper pageSnapHelper = new PagerGridSnapHelper();
pageSnapHelper.attachToRecyclerView(mBinding.recyclerView);
mBinding.recyclerView.setAdapter(mUserGiftWallAdapter = new UserGiftWallAdapter());
mBinding.recyclerView.setAdapter(mUserGiftWallAdapter);
}
@@ -66,15 +70,39 @@ public class UserGiftWallFragment extends BaseMvpFragment<UserGiftWallPresenter,
}
@Override
public void setGiftWall(List<GiftBean> data) {
// if (data != null && data.size() > 0) {
// if (homePageInfoActivity != null) {
// homePageInfoActivity.setTab(2);
// }
mUserGiftWallAdapter.setNewData(data);
mBinding.slGiftWall.setVisibility(View.VISIBLE);
//
// }
public void setGiftWall(GiftUserWallBean data) {
// mUserGiftWallAdapter.setNewData(data);
// mBinding.slGiftWall.setVisibility(View.VISIBLE);
List<CombinedGiftBean> combinedList = new ArrayList<>();
// 添加点亮的礼物
for (GiftUserWallBean.GiftWallBean liangGift : data.getLiang()) {
CombinedGiftBean combinedGift = new CombinedGiftBean();
combinedGift.setGift_id(liangGift.getGift_id());
combinedGift.setGift_price(liangGift.getGift_price());
combinedGift.setGift_name(liangGift.getGift_name());
combinedGift.setBase_image(liangGift.getBase_image());
combinedGift.setTotal_count(liangGift.getTotal_count());
combinedGift.setTop_users(liangGift.getTop_users());
combinedGift.setTop_users_count(liangGift.getTop_users_count());
combinedGift.set_liang(true);
combinedList.add(combinedGift);
}
// 添加未点亮的礼物
for (GiftUserWallBean.GiftWallBean noLiangGift : data.getNo_liang()) {
CombinedGiftBean combinedGift = new CombinedGiftBean();
combinedGift.setGift_id(noLiangGift.getGift_id());
combinedGift.setGift_price(noLiangGift.getGift_price());
combinedGift.setGift_name(noLiangGift.getGift_name());
combinedGift.setBase_image(noLiangGift.getBase_image());
combinedGift.set_liang(false);
combinedList.add(combinedGift);
}
mUserGiftWallAdapter.setNewData(combinedList);
}
}

View File

@@ -48,6 +48,7 @@ public class UserHomepageFragment extends BaseMvpFragment<UserHomepagePresenter,
private UserInfo userInfo;
private BaseQuickAdapter<UserTagBean, BaseViewHolder> adapter;
private List<UserTagBean> userTagBeans = new ArrayList<>();
private int type;
@Override
public void setUserDetails(UserInfo data) {
@@ -61,7 +62,7 @@ public class UserHomepageFragment extends BaseMvpFragment<UserHomepagePresenter,
@Override
public void userGuanzSuccess(String s) {
if (userInfo.getIs_follow()==1) {
if (userInfo.getIs_follow() == 1) {
userInfo.setIs_follow(0);
SpUtil.saveUserInfo(userInfo);
} else {
@@ -76,10 +77,11 @@ public class UserHomepageFragment extends BaseMvpFragment<UserHomepagePresenter,
}
public static UserHomepageFragment newInstance(String userId) {
public static UserHomepageFragment newInstance(String userId, int type) {
UserHomepageFragment fragment = new UserHomepageFragment();
Bundle args = new Bundle();
args.putString("userId", userId);
args.putInt("type", type);
fragment.setArguments(args);
return fragment;
}
@@ -88,6 +90,7 @@ public class UserHomepageFragment extends BaseMvpFragment<UserHomepagePresenter,
public void initArgs(Bundle arguments) {
super.initArgs(arguments);
userId = arguments.getString("userId");
type = arguments.getInt("type");
}
@Override
@@ -104,11 +107,15 @@ public class UserHomepageFragment extends BaseMvpFragment<UserHomepagePresenter,
list.add(new MyBagBean("我的相册", "3"));
mBinding.viewPager.setAdapter(new MyFragmentPagerAdapter(getChildFragmentManager(), list, userId));
mBinding.slidingTabLayout.setViewPager(mBinding.viewPager);
mBinding.slidingTabLayout.setCurrentTab(0);
if (type == 1) {
mBinding.slidingTabLayout.setCurrentTab(1);
} else {
mBinding.slidingTabLayout.setCurrentTab(0);
}
mBinding.headerInfo.rivUserHead.setData(userInfo.getAvatar(), "", userInfo.getSex() + "");
mBinding.headerInfo.tvNickName.setText(userInfo.getNickname());
mBinding.headerInfo.tvUserId.setText(userInfo.getUser_code());
mBinding.headerInfo.tvAge.setText(userInfo.getAge() + "");
mBinding.headerInfo.tvAge.setText(userInfo.getAge() + "");
mBinding.headerInfo.tvJj.setText(userInfo.getProfile());
LinearLayout llContainer = mBinding.headerInfo.llImageContainer;
llContainer.removeAllViews(); // 清空旧的 ImageView
@@ -150,25 +157,24 @@ public class UserHomepageFragment extends BaseMvpFragment<UserHomepagePresenter,
}
mBinding.headerInfo.tvGz.setOnClickListener(this::onClick);
mBinding.headerInfo.tvGsSx.setOnClickListener(this::onClick);
refreshView();
}
private void refreshView(){
private void refreshView() {
if (SpUtil.getUserId() == Integer.parseInt(userId)) {
mBinding.headerInfo.tvGsSx.setVisibility(View.GONE);
mBinding.headerInfo.tvGz.setVisibility(View.GONE);
} else {
mBinding.headerInfo.tvGsSx.setVisibility(View.VISIBLE);
mBinding.headerInfo.tvGz.setVisibility(View.VISIBLE);
if (userInfo.getIs_follow()==1) {
if (userInfo.getIs_follow() == 1) {
mBinding.headerInfo.tvGz.setBackground(getResources().getDrawable(com.qxcm.moduleutil.R.mipmap.yigz));
} else {
mBinding.headerInfo.tvGz.setBackground(getResources().getDrawable(com.qxcm.moduleutil.R.mipmap.gz));
}
if (userInfo.getRoom_id()==null||userInfo.getRoom_id().equals("0")) {
if (userInfo.getRoom_id() == null || userInfo.getRoom_id().equals("0")) {
mBinding.headerInfo.tvGsSx.setBackground(getResources().getDrawable(com.qxcm.moduleutil.R.mipmap.six));
} else {
mBinding.headerInfo.tvGsSx.setBackground(getResources().getDrawable(com.qxcm.moduleutil.R.mipmap.gsui));
@@ -181,13 +187,13 @@ public class UserHomepageFragment extends BaseMvpFragment<UserHomepagePresenter,
if (view.getId() == R.id.tv_gz) {
MvpPre.userGuanz(userInfo.getUser_id() + "", "1");
} else if (view.getId() == R.id.tv_gs_sx) {
if (userInfo.getRoom_id()==null||userInfo.getRoom_id().equals("0")){
Intent intent=new Intent(getActivity(), TUIC2CChatActivity.class);
intent.putExtra(TUIConstants.TUIChat.CHAT_ID, "u"+userInfo.getUser_id());
intent.putExtra(TUIConstants.TUIChat.CHAT_TYPE, V2TIMConversation.V2TIM_C2C);
if (userInfo.getRoom_id() == null || userInfo.getRoom_id().equals("0")) {
Intent intent = new Intent(getActivity(), TUIC2CChatActivity.class);
intent.putExtra(TUIConstants.TUIChat.CHAT_ID, "u" + userInfo.getUser_id());
intent.putExtra(TUIConstants.TUIChat.CHAT_TYPE, V2TIMConversation.V2TIM_C2C);
startActivity(intent);
}else {
ARouter.getInstance().build(ARouteConstants.ROOM_DETAILS).withString("room_id", userInfo.getRoom_id()).navigation();
} else {
ARouter.getInstance().build(ARouteConstants.ROOM_DETAILS).withString("roomId", userInfo.getRoom_id()).navigation();
}
}
}

View File

@@ -1,5 +1,8 @@
package com.example.modulevocal.fragment;
import static android.content.Context.CLIPBOARD_SERVICE;
import static androidx.core.content.ContextCompat.getSystemService;
import android.content.ClipData;
import android.content.ClipboardManager;
import android.content.Context;
@@ -13,6 +16,7 @@ import androidx.annotation.Nullable;
import android.view.View;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.Toast;
import com.example.modulevocal.R;
import com.example.modulevocal.activity.BlacklistActivity;
@@ -276,8 +280,22 @@ public class VocalRangeFragment extends BaseMvpFragment<MePresenter, FragmentVoc
intent.putExtra("url", " https://vespa.qxmier.com/web/index.html#/pages/other/income?id=" + SpUtil.getToken());
intent.putExtra("title", "邀请");
startActivity(intent);
}else if (id==R.id.beautiful_view_copy){
copyComment(mBinding.beautifulView.getText().toString());
}
}
private void copyComment(String content) {
// 获取剪贴板管理器
ClipboardManager clipboard = (ClipboardManager) getContext().getSystemService(Context.CLIPBOARD_SERVICE);
ClipData clip = ClipData.newPlainText("Copied Text", content);
// 设置剪贴板数据
clipboard.setPrimaryClip(clip);
Toast.makeText(getContext(), "复制成功", Toast.LENGTH_SHORT);
// 可选:通知用户文本已复制
}
/**
* 查看用户主页(我的空间)
@@ -381,7 +399,7 @@ public class VocalRangeFragment extends BaseMvpFragment<MePresenter, FragmentVoc
// }
private void copyUserId(CharSequence content) {
ClipboardManager clipboard = (ClipboardManager) getActivity().getSystemService(Context.CLIPBOARD_SERVICE);
ClipboardManager clipboard = (ClipboardManager) getActivity().getSystemService(CLIPBOARD_SERVICE);
if (clipboard != null) {
clipboard.setPrimaryClip(ClipData.newPlainText(null, content));
// ToastUtils.show("已复制到粘贴板");

View File

@@ -13,9 +13,6 @@ import com.qxcm.moduleutil.http.BaseObserver;
import com.qxcm.moduleutil.presenter.BasePresenter;
import com.qxcm.moduleutil.utils.SystemUtils;
import com.qxcm.moduleutil.utils.oss.OSSOperUtils;
import com.tencent.cloud.huiyansdkface.okhttp3.Interceptor;
import com.tencent.cloud.huiyansdkface.okhttp3.OkHttpClient;
import com.tencent.cloud.huiyansdkface.okhttp3.Request;
import java.io.File;
import java.util.ArrayList;

View File

@@ -25,9 +25,9 @@ public class MyRoomPresenter extends BasePresenter<MyRoomListContacts.View> impl
}
@Override
public void getCharmList(int type) {
public void getCharmList(int type,String page) {
api.getMyRoom(type+"", new BaseObserver<List<MyRoomBean>>() {
api.getMyRoom(type+"",page,"20", new BaseObserver<List<MyRoomBean>>() {
@Override
public void onSubscribe(Disposable d) {
addDisposable(d);
@@ -36,6 +36,7 @@ public class MyRoomPresenter extends BasePresenter<MyRoomListContacts.View> impl
@Override
public void onNext(List<MyRoomBean> myRoomBeans) {
MvpRef.get().setList(myRoomBeans,type);
MvpRef.get().finishRefresh();
}
});
@@ -115,21 +116,21 @@ public class MyRoomPresenter extends BasePresenter<MyRoomListContacts.View> impl
@Override
public void delfoot() {
// com.qpyy.module.index.api.ApiClient.getInstance().delfoot(new com.qpyy.libcommon.http.BaseObserver<String>() {
// @Override
// public void onSubscribe(Disposable d) {
// addDisposable(d);
// }
//
// @Override
// public void onNext(String s) {
// MvpRef.get().delfootSuccess();
// }
//
// @Override
// public void onComplete() {
// }
// });
api.delfoot(new BaseObserver<String>() {
@Override
public void onSubscribe(Disposable d) {
addDisposable(d);
}
@Override
public void onNext(String s) {
MvpRef.get().delfootSuccess();
}
@Override
public void onComplete() {
}
});
}
// TODO: 2025/4/15 我的足迹

View File

@@ -32,6 +32,7 @@ public class RoomDetailsPresenter extends BasePresenter<MyRoomListContacts.Deati
@Override
public void onNext(RoomDetails roomDetails) {
MvpRef.get().setList(roomDetails);
MvpRef.get().finishRefresh();
}
});

View File

@@ -5,6 +5,7 @@ import android.content.Context;
import com.example.modulevocal.conacts.UserGiftWallConacts;
import com.qxcm.moduleutil.bean.GiftBean;
import com.qxcm.moduleutil.bean.GiftUserWallBean;
import com.qxcm.moduleutil.http.BaseObserver;
import com.qxcm.moduleutil.presenter.BasePresenter;
@@ -21,32 +22,20 @@ public class UserGiftWallPresenter extends BasePresenter<UserGiftWallConacts.Vie
@Override
public void giftWall(String userId) {
// ApiClient.getInstance().giftWall(userId, new BaseObserver<List<GiftBean>>() {
// @Override
// public void onSubscribe(Disposable d) {
// addDisposable(d);
// }
//
// @Override
// public void onNext(List<GiftBean> giftBeans) {
// MvpRef.get().setGiftWall(giftBeans);
// }
//
// @Override
// public void onComplete() {
// }
// });
List<GiftBean> giftBeans = new ArrayList<>();
for (int i = 0; i < 5; i++) {
GiftBean giftBean = new GiftBean();
giftBean.setGift_id(""+i);
// giftBean.setName("礼物"+i);
// giftBean.setPicture("");
// giftBean.setPrice(""+i);
// giftBean.setNumber("x"+i);
giftBeans.add(giftBean);
}
api.giftWall(userId, new BaseObserver<GiftUserWallBean>() {
@Override
public void onSubscribe(Disposable d) {
addDisposable(d);
}
MvpRef.get().setGiftWall(giftBeans);
@Override
public void onNext(GiftUserWallBean giftBeans) {
MvpRef.get().setGiftWall(giftBeans);
}
@Override
public void onComplete() {
}
});
}
}

View File

@@ -38,7 +38,7 @@ public class UserHomepagePresenter extends BasePresenter<UserHomepageConacts.Vie
@Override
public void getCircleList(String user_id, String page, String page_limit) {
api.getCircleUserList(user_id,page,page_limit,new BaseObserver<List<CircleListBean>>() {
api.getCircleUserList(user_id, page, page_limit, new BaseObserver<List<CircleListBean>>() {
@Override
public void onSubscribe(Disposable d) {
addDisposable(d);
@@ -46,14 +46,14 @@ public class UserHomepagePresenter extends BasePresenter<UserHomepageConacts.Vie
@Override
public void onNext(List<CircleListBean> circleListBeans) {
MvpRef.get().setCircleList(circleListBeans);
MvpRef.get().setCircleList(circleListBeans);
}
});
}
@Override
public void userGuanz(String userId, String type) {
api.userGuanz(userId,type, new BaseObserver<String>() {
api.userGuanz(userId, type, new BaseObserver<String>() {
@Override
public void onSubscribe(Disposable d) {
addDisposable(d);

View File

@@ -1,247 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<layout 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"
tools:context=".activity.RealNameActivity">
<data>
</data>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<com.qxcm.moduleutil.widget.CustomTopBar
android:id="@+id/top_bar"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<LinearLayout
android:id="@+id/steps"
android:layout_width="match_parent"
android:layout_height="@dimen/dp_68"
android:layout_margin="@dimen/dp_16"
android:background="@drawable/bg_r9_fffff"
android:orientation="horizontal">
<!-- 第一步:验证手机号 -->
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center"
android:orientation="vertical">
<!-- 步骤编号 -->
<TextView
android:id="@+id/step_num_1"
android:layout_width="@dimen/dp_23"
android:layout_height="@dimen/dp_23"
android:layout_marginTop="@dimen/dp_8"
android:background="@mipmap/num_1"
android:gravity="center" />
<!-- 步骤描述 -->
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="8dp"
android:layout_marginBottom="@dimen/dp_8"
android:text="@string/fill_identity_info"
android:textColor="@color/color_FF333333"
android:textSize="@dimen/sp_14" />
</LinearLayout>
<!-- 分割线 -->
<View
android:layout_width="0dp"
android:layout_height="1dp"
android:layout_marginTop="@dimen/dp_19"
android:layout_weight="1"
android:background="@mipmap/line9" />
<!-- 第二步:设置新密码 -->
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center"
android:orientation="vertical">
<!-- 步骤编号 -->
<TextView
android:id="@+id/step_num_2"
android:layout_width="@dimen/dp_23"
android:layout_height="@dimen/dp_23"
android:layout_marginTop="@dimen/dp_8"
android:background="@mipmap/num_22"
android:gravity="center" />
<!-- 步骤描述 -->
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="8dp"
android:layout_marginBottom="@dimen/dp_8"
android:text="@string/face_recognition"
android:textColor="@color/color_FF333333"
android:textSize="@dimen/sp_14" />
</LinearLayout>
</LinearLayout>
<LinearLayout
android:id="@+id/l_1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
>
<TextView
android:layout_width="match_parent"
android:layout_height="@dimen/dp_50"
android:layout_marginStart="@dimen/dp_16"
android:layout_marginEnd="@dimen/dp_16"
android:text="@string/real_name_authentication_tips"
android:textColor="@color/color_FF999999"
android:textSize="@dimen/sp_12" />
<RelativeLayout
android:id="@+id/rl_name"
android:layout_width="match_parent"
android:layout_height="@dimen/dp_44"
android:layout_marginLeft="@dimen/dp_16"
android:layout_marginTop="@dimen/dp_12"
android:layout_marginRight="@dimen/dp_16"
android:background="@drawable/bg_r16_ffeff2f8"
android:gravity="center">
<TextView
android:id="@+id/tv_send_name"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_marginStart="@dimen/dp_14"
android:gravity="left|center"
android:text="@string/real_name"
android:textColor="@color/color_FF333333"
android:textSize="@dimen/sp_16"
tools:visibility="visible" />
<EditText
android:id="@+id/ed_name"
android:layout_width="match_parent"
android:layout_height="@dimen/dp_28"
android:layout_centerInParent="true"
android:layout_marginLeft="13dp"
android:layout_marginRight="25dp"
android:layout_toRightOf="@+id/tv_send_name"
android:background="@android:color/transparent"
android:hint="@string/please_enter_real_name"
android:singleLine="true"
android:textColor="@color/black"
android:textColorHint="@color/color_FF9b9b9b"
android:textSize="@dimen/sp_16" />
</RelativeLayout>
<RelativeLayout
android:id="@+id/rl_code"
android:layout_width="match_parent"
android:layout_height="@dimen/dp_44"
android:layout_marginLeft="@dimen/dp_16"
android:layout_marginTop="@dimen/dp_12"
android:layout_marginRight="@dimen/dp_16"
android:background="@drawable/bg_r16_ffeff2f8"
android:gravity="center">
<TextView
android:id="@+id/tv_send_code"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_marginStart="@dimen/dp_14"
android:gravity="left|center"
android:text="@string/id_number"
android:textColor="@color/color_FF333333"
android:textSize="@dimen/sp_16"
tools:visibility="visible" />
<EditText
android:id="@+id/ed_password"
android:layout_width="match_parent"
android:layout_height="@dimen/dp_28"
android:layout_centerInParent="true"
android:layout_marginLeft="13dp"
android:layout_marginRight="25dp"
android:layout_toRightOf="@+id/tv_send_code"
android:background="@android:color/transparent"
android:hint="@string/please_enter_id_number"
android:singleLine="true"
android:textColor="@color/black"
android:textColorHint="@color/color_FF9b9b9b"
android:textSize="@dimen/sp_16" />
</RelativeLayout>
</LinearLayout>
<LinearLayout
android:id="@+id/l_2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:visibility="gone">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/dp_16"
android:layout_marginTop="@dimen/dp_12"
android:gravity="center"
android:textColor="@color/color_FF333333"
android:textSize="@dimen/sp_16"
android:textStyle="bold"
android:layout_marginEnd="@dimen/dp_16"
android:text="为了保证本人操作,请进行人脸验证"
/>
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@mipmap/real_img"
android:layout_gravity="center"/>
<TextView
android:id="@+id/tv_agree_terms"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/dp_54"
android:layout_marginTop="@dimen/dp_12"
android:layout_marginEnd="@dimen/dp_54"
android:lineSpacingExtra="@dimen/dp_5"
android:text="您知悉并同意应用提供者 \n· 收集、使用您本人的身份信息和人脸图像 \n· 向合法数据持有者核实您的身份信息 \n· 本操作数据仅用于身份核实,安全可靠"
android:textColor="@color/color_FF333333"
android:textSize="@dimen/sp_12" />
</LinearLayout>
<!-- 提交按钮 -->
<Button
android:id="@+id/btnSubmit"
android:layout_width="match_parent"
android:layout_height="@dimen/dp_42"
android:layout_marginStart="@dimen/dp_38"
android:layout_marginTop="@dimen/dp_20"
android:layout_marginEnd="@dimen/dp_38"
android:background="@drawable/cs"
android:gravity="center"
android:text="下一步"
android:textColor="@color/color_FF333333"
android:textSize="16sp" />
</LinearLayout>
</layout>

View File

@@ -67,14 +67,21 @@
</RelativeLayout>
</RelativeLayout>
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/recycler_view"
<ScrollView
android:id="@+id/scroll_view"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/dp_16"
android:layout_marginTop="@dimen/dp_12"
android:layout_marginEnd="@dimen/dp_16"
app:layout_constraintTop_toBottomOf="@id/rl_1" />
android:layout_height="@dimen/dp_300"
app:layout_constraintTop_toBottomOf="@+id/rl_1">
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/recycler_view"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/dp_16"
android:layout_marginTop="@dimen/dp_12"
android:layout_marginEnd="@dimen/dp_16" />
</ScrollView>
<RelativeLayout
android:id="@+id/r_4"
@@ -84,46 +91,45 @@
android:layout_marginTop="@dimen/dp_12"
android:layout_marginEnd="@dimen/dp_16"
app:layout_constraintBottom_toTopOf="@+id/v_view"
app:layout_constraintTop_toBottomOf="@+id/recycler_view">
app:layout_constraintTop_toBottomOf="@+id/scroll_view">
<TextView
android:id="@+id/t_4"
android:layout_width="@dimen/dp_18"
android:layout_height="@dimen/dp_27"
android:layout_alignParentStart="true"
android:layout_centerVertical="true"
android:layout_centerInParent="true"
android:gravity="center"
android:layout_centerVertical="true"
android:layout_marginStart="@dimen/dp_16"
android:gravity="center"
android:text="¥"
android:textStyle="bold"
android:textSize="@dimen/sp_18"
android:textColor="@color/color_FF000000"
/>
android:textSize="@dimen/sp_18"
android:textStyle="bold" />
<com.google.android.material.textfield.TextInputEditText
android:id="@+id/et_custom_amount"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:layout_toRightOf="@+id/t_4"
android:background="@null"
android:layout_centerInParent="true"
android:hint="请输入充值金额(300-50000元)"
android:textColorHint="@color/color_FF999999"
android:inputType="numberDecimal"
android:textSize="@dimen/sp_12"/>
android:textColorHint="@color/color_FF999999"
android:textSize="@dimen/sp_14" />
<TextView
android:id="@+id/t_5"
android:layout_width="wrap_content"
android:layout_height="@dimen/dp_27"
android:layout_centerInParent="true"
android:layout_alignParentEnd="true"
android:gravity="center"
android:layout_centerInParent="true"
android:layout_marginStart="@dimen/dp_4"
android:gravity="center"
android:text="将获得0金币"
android:textStyle="bold"
/>
android:visibility="gone" />
</RelativeLayout>
<View
@@ -148,88 +154,95 @@
android:textSize="@dimen/sp_16"
app:layout_constraintTop_toBottomOf="@id/v_view" />
<!-- <RelativeLayout-->
<!-- android:id="@+id/rl_weixin_pay"-->
<!-- android:layout_width="match_parent"-->
<!-- android:layout_height="wrap_content"-->
<!-- android:layout_marginStart="@dimen/dp_16"-->
<!-- android:layout_marginTop="@dimen/dp_10"-->
<!-- android:layout_marginEnd="@dimen/dp_16"-->
<!-- app:layout_constraintTop_toBottomOf="@+id/t_2">-->
<!-- <RelativeLayout-->
<!-- android:id="@+id/rl_weixin_pay"-->
<!-- android:layout_width="match_parent"-->
<!-- android:layout_height="wrap_content"-->
<!-- android:layout_marginStart="@dimen/dp_16"-->
<!-- android:layout_marginTop="@dimen/dp_10"-->
<!-- android:layout_marginEnd="@dimen/dp_16"-->
<!-- app:layout_constraintTop_toBottomOf="@+id/t_2">-->
<!-- <ImageView-->
<!-- android:id="@+id/im_wx"-->
<!-- android:layout_width="@dimen/dp_20"-->
<!-- android:layout_height="@dimen/dp_20"-->
<!-- android:src="@mipmap/wx_zf" />-->
<!-- <ImageView-->
<!-- android:id="@+id/im_wx"-->
<!-- android:layout_width="@dimen/dp_20"-->
<!-- android:layout_height="@dimen/dp_20"-->
<!-- android:src="@mipmap/wx_zf" />-->
<!-- <TextView-->
<!-- android:layout_width="wrap_content"-->
<!-- android:layout_height="wrap_content"-->
<!-- android:layout_centerVertical="true"-->
<!-- android:layout_marginLeft="@dimen/dp_1"-->
<!-- android:layout_toRightOf="@+id/im_wx"-->
<!-- android:text="@string/wechat_payment"-->
<!-- android:textColor="@color/color_FF333333"-->
<!-- android:textSize="@dimen/sp_14" />-->
<!-- <TextView-->
<!-- android:layout_width="wrap_content"-->
<!-- android:layout_height="wrap_content"-->
<!-- android:layout_centerVertical="true"-->
<!-- android:layout_marginLeft="@dimen/dp_1"-->
<!-- android:layout_toRightOf="@+id/im_wx"-->
<!-- android:text="@string/wechat_payment"-->
<!-- android:textColor="@color/color_FF333333"-->
<!-- android:textSize="@dimen/sp_14" />-->
<!-- <ImageView-->
<!-- android:id="@+id/iv_weixin"-->
<!-- android:layout_width="wrap_content"-->
<!-- android:layout_height="wrap_content"-->
<!-- android:layout_alignParentRight="true"-->
<!-- android:layout_centerVertical="true"-->
<!-- android:layout_marginEnd="@dimen/dp_2"-->
<!-- android:src="@drawable/level_pay" />-->
<!-- <ImageView-->
<!-- android:id="@+id/iv_weixin"-->
<!-- android:layout_width="wrap_content"-->
<!-- android:layout_height="wrap_content"-->
<!-- android:layout_alignParentRight="true"-->
<!-- android:layout_centerVertical="true"-->
<!-- android:layout_marginEnd="@dimen/dp_2"-->
<!-- android:src="@drawable/level_pay" />-->
<!-- </RelativeLayout>-->
<!-- </RelativeLayout>-->
<!-- <RelativeLayout-->
<!-- android:id="@+id/rl_three_pay"-->
<!-- android:layout_width="match_parent"-->
<!-- android:layout_height="wrap_content"-->
<!-- android:layout_marginStart="@dimen/dp_16"-->
<!-- android:layout_marginTop="@dimen/dp_12"-->
<!-- android:layout_marginEnd="@dimen/dp_16"-->
<!-- app:layout_constraintTop_toBottomOf="@+id/rl_weixin_pay">-->
<!-- <RelativeLayout-->
<!-- android:id="@+id/rl_three_pay"-->
<!-- android:layout_width="match_parent"-->
<!-- android:layout_height="wrap_content"-->
<!-- android:layout_marginStart="@dimen/dp_16"-->
<!-- android:layout_marginTop="@dimen/dp_12"-->
<!-- android:layout_marginEnd="@dimen/dp_16"-->
<!-- app:layout_constraintTop_toBottomOf="@+id/rl_weixin_pay">-->
<!-- <ImageView-->
<!-- android:id="@+id/im_zfb"-->
<!-- android:layout_width="@dimen/dp_20"-->
<!-- android:layout_height="@dimen/dp_20"-->
<!-- android:src="@mipmap/sign_icon_zfb" />-->
<!-- <ImageView-->
<!-- android:id="@+id/im_zfb"-->
<!-- android:layout_width="@dimen/dp_20"-->
<!-- android:layout_height="@dimen/dp_20"-->
<!-- android:src="@mipmap/sign_icon_zfb" />-->
<!-- <TextView-->
<!-- android:layout_width="wrap_content"-->
<!-- android:layout_height="wrap_content"-->
<!-- android:layout_centerVertical="true"-->
<!-- android:layout_marginLeft="@dimen/dp_1"-->
<!-- android:layout_toRightOf="@+id/im_zfb"-->
<!-- android:text="@string/alipay_payment"-->
<!-- android:textColor="@color/color_FF333333"-->
<!-- android:textSize="@dimen/sp_14" />-->
<!-- <TextView-->
<!-- android:layout_width="wrap_content"-->
<!-- android:layout_height="wrap_content"-->
<!-- android:layout_centerVertical="true"-->
<!-- android:layout_marginLeft="@dimen/dp_1"-->
<!-- android:layout_toRightOf="@+id/im_zfb"-->
<!-- android:text="@string/alipay_payment"-->
<!-- android:textColor="@color/color_FF333333"-->
<!-- android:textSize="@dimen/sp_14" />-->
<!-- <ImageView-->
<!-- android:id="@+id/iv_three_pay"-->
<!-- android:layout_width="wrap_content"-->
<!-- android:layout_height="wrap_content"-->
<!-- android:layout_alignParentRight="true"-->
<!-- android:layout_centerVertical="true"-->
<!-- android:layout_marginEnd="@dimen/dp_2"-->
<!-- android:src="@drawable/level_pay" />-->
<!-- <ImageView-->
<!-- android:id="@+id/iv_three_pay"-->
<!-- android:layout_width="wrap_content"-->
<!-- android:layout_height="wrap_content"-->
<!-- android:layout_alignParentRight="true"-->
<!-- android:layout_centerVertical="true"-->
<!-- android:layout_marginEnd="@dimen/dp_2"-->
<!-- android:src="@drawable/level_pay" />-->
<!-- </RelativeLayout>-->
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/recycle_view1"
<!-- </RelativeLayout>-->
<ScrollView
android:id="@+id/scroll_view2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/dp_16"
android:layout_marginTop="@dimen/dp_12"
android:layout_marginEnd="@dimen/dp_16"
app:layout_constraintTop_toBottomOf="@+id/t_2"/>
android:layout_height="@dimen/dp_140"
app:layout_constraintTop_toBottomOf="@+id/t_2">
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/recycle_view1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginStart="@dimen/dp_16"
android:layout_marginTop="@dimen/dp_12"
android:layout_marginEnd="@dimen/dp_16"
app:layout_constraintTop_toBottomOf="@+id/t_2" />
</ScrollView>
<TextView
android:id="@+id/tv_payment"
@@ -238,7 +251,7 @@
android:layout_alignParentBottom="true"
android:layout_marginLeft="@dimen/dp_38"
android:layout_marginRight="@dimen/dp_38"
android:layout_marginBottom="@dimen/dp_57"
android:layout_marginBottom="@dimen/dp_47"
android:background="@drawable/cs"
android:gravity="center"
android:text="确认支付"

View File

@@ -158,7 +158,7 @@
android:layout_width="match_parent"
android:layout_height="match_parent"
app:srlEnableLoadMore="true"
app:srlEnableRefresh="false">
app:srlEnableRefresh="true">
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/rv"

View File

@@ -263,7 +263,8 @@
<LinearLayout
android:id="@+id/ll_qhzh"
style="@style/My_Info_Item_LL_Style"
android:background="@drawable/bg_r15_white">
android:background="@drawable/bg_r15_white"
android:visibility="gone">
<TextView
style="@style/My_Info_Item_Title_Style"

View File

@@ -117,7 +117,7 @@
android:layout_centerInParent="true"
android:hint="请输入"
android:textColorHint="@color/color_FF999999"
android:inputType="numberDecimal"
android:inputType="number"
android:textSize="@dimen/sp_14"/>
<TextView

View File

@@ -1,47 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
xmlns:app="http://schemas.android.com/apk/res-auto">
<RelativeLayout
android:id="@+id/rl_three_pay"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/dp_16"
android:layout_marginTop="@dimen/dp_12"
android:layout_marginEnd="@dimen/dp_16"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintEnd_toEndOf="parent">
<ImageView
android:id="@+id/im_zfb"
android:layout_width="@dimen/dp_20"
android:layout_height="@dimen/dp_20"
android:src="@mipmap/sign_icon_zfb" />
<TextView
android:id="@+id/tv_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_marginLeft="@dimen/dp_1"
android:layout_toRightOf="@+id/im_zfb"
android:text="@string/alipay_payment"
android:textColor="@color/color_FF333333"
android:textSize="@dimen/sp_14" />
<ImageView
android:id="@+id/iv_three_pay"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:layout_marginEnd="@dimen/dp_2"
android:src="@drawable/level_pay" />
</RelativeLayout>
</androidx.constraintlayout.widget.ConstraintLayout>

View File

@@ -59,6 +59,7 @@
android:text="[在线]"
android:textColor="@color/color_FF999999"
android:textSize="@dimen/sp_10"
android:visibility="gone"
/>
<ImageView

View File

@@ -0,0 +1,15 @@
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
xmlns:app="http://schemas.android.com/apk/res-auto">
<com.qxcm.moduleutil.widget.GifAvatarOvalView
android:layout_width="@dimen/dp_12"
android:layout_height="@dimen/dp_12"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintStart_toStartOf="parent"
android:id="@+id/riv_user_avatar"
android:src="@mipmap/default_avatar" />
</androidx.constraintlayout.widget.ConstraintLayout>

View File

@@ -12,16 +12,12 @@
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#fff"
android:visibility="gone"
tools:visibility="visible">
<androidx.core.widget.NestedScrollView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingBottom="@dimen/dp_20">
<!-- <androidx.core.widget.NestedScrollView-->
<!-- android:layout_width="match_parent"-->
<!-- android:layout_height="wrap_content"-->
<!-- android:paddingBottom="@dimen/dp_20">-->
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/recycler_view"
android:layout_width="match_parent"
@@ -34,7 +30,7 @@
app:spanCount="4"
tools:listitem="@layout/me_item_user_gift_wall" />
</androidx.core.widget.NestedScrollView>
<!-- </androidx.core.widget.NestedScrollView>-->
</FrameLayout>

View File

@@ -2,43 +2,128 @@
<androidx.constraintlayout.widget.ConstraintLayout 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:layout_marginLeft="@dimen/dp_10"
android:layout_width="@dimen/dp_77"
android:layout_height="@dimen/dp_119"
android:layout_marginTop="@dimen/dp_10"
android:layout_marginRight="@dimen/dp_10"
android:layout_marginBottom="@dimen/dp_10"
android:background="@mipmap/gift_bj"
android:gravity="center_horizontal"
android:orientation="vertical">
<RelativeLayout
android:id="@+id/rl_user_head"
<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/cl_iv_down_on"
android:layout_width="match_parent"
android:layout_height="0dp"
android:padding="@dimen/dp_2"
app:layout_constraintDimensionRatio="1:1"
app:layout_constraintTop_toTopOf="parent">
android:layout_height="match_parent"
tools:ignore="MissingConstraints">
<com.makeramen.roundedimageview.RoundedImageView
android:id="@+id/riv_user_head"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:riv_corner_radius="@dimen/dp_13"
tools:src="@color/color_FF5872FF" />
</RelativeLayout>
<ImageView
android:id="@+id/iv_gift_pic"
android:layout_width="0dp"
android:layout_height="0dp"
android:layout_marginLeft="9dp"
android:layout_marginTop="5dp"
android:layout_marginRight="9dp"
android:src="@mipmap/default_image"
app:layout_constraintDimensionRatio="1:1.2"
app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent"
android:alpha="0.5"
/>
<TextView
android:id="@+id/tv_gift_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/dp_2"
android:text="冲浪少年"
android:textColor="@color/color_FF545454"
android:textSize="@dimen/sp_11"
app:layout_constraintEnd_toEndOf="@+id/rl_user_head"
app:layout_constraintStart_toStartOf="@+id/rl_user_head"
app:layout_constraintTop_toBottomOf="@+id/rl_user_head" />
<ImageView
android:id="@+id/iv_gift_pic_overlay"
android:layout_width="0dp"
android:layout_height="0dp"
android:layout_marginLeft="9dp"
android:layout_marginTop="5dp"
android:layout_marginRight="9dp"
app:layout_constraintDimensionRatio="1:1.2"
app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent"
android:alpha="0.3"
android:background="#40000000"
android:visibility="gone" />
<ImageView
android:id="@+id/iv_down_on"
android:layout_width="0dp"
android:layout_height="0dp"
android:layout_marginLeft="9dp"
android:layout_marginTop="5dp"
android:layout_marginRight="9dp"
android:scaleType="fitXY"
android:src="@mipmap/room_gift_select_bg"
android:visibility="gone"
app:layout_constraintDimensionRatio="1:1.2"
app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<TextView
android:id="@+id/tv_gift_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:singleLine="true"
android:text="甜蜜奶酪"
android:textColor="@color/color_FFA9A9A9"
android:textSize="11sp"
app:layout_constraintLeft_toLeftOf="@+id/iv_gift_pic"
app:layout_constraintRight_toRightOf="@+id/iv_gift_pic"
app:layout_constraintTop_toBottomOf="@+id/iv_gift_pic" />
<TextView
android:id="@+id/tv_gift_price"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="@dimen/dp_5"
android:drawableLeft="@mipmap/jinb"
android:drawablePadding="@dimen/dp_3"
android:text="1"
android:textColor="@color/color_FFFFBC00"
android:textSize="11sp"
app:layout_constraintLeft_toLeftOf="@+id/iv_gift_pic"
app:layout_constraintRight_toRightOf="@+id/iv_gift_pic"
app:layout_constraintTop_toBottomOf="@+id/tv_gift_name" />
</androidx.constraintlayout.widget.ConstraintLayout>
<!-- <RelativeLayout-->
<!-- android:id="@+id/rl_user_head"-->
<!-- android:layout_width="match_parent"-->
<!-- android:layout_height="0dp"-->
<!-- android:padding="@dimen/dp_2"-->
<!-- app:layout_constraintDimensionRatio="1:1"-->
<!-- app:layout_constraintTop_toTopOf="parent"-->
<!-- android:visibility="gone">-->
<!-- <com.makeramen.roundedimageview.RoundedImageView-->
<!-- android:id="@+id/riv_user_head"-->
<!-- android:layout_width="match_parent"-->
<!-- android:layout_height="match_parent"-->
<!-- app:riv_corner_radius="@dimen/dp_13"-->
<!-- tools:src="@color/color_FF5872FF" />-->
<!-- </RelativeLayout>-->
<!-- <TextView-->
<!-- android:id="@+id/tv_gift_name"-->
<!-- android:layout_width="wrap_content"-->
<!-- android:layout_height="wrap_content"-->
<!-- android:layout_marginTop="@dimen/dp_2"-->
<!-- android:text="冲浪少年"-->
<!-- android:textColor="@color/color_FF545454"-->
<!-- android:textSize="@dimen/sp_11"-->
<!-- app:layout_constraintEnd_toEndOf="@+id/rl_user_head"-->
<!-- app:layout_constraintStart_toStartOf="@+id/rl_user_head"-->
<!-- app:layout_constraintTop_toBottomOf="@+id/rl_user_head" />-->
<TextView
android:id="@+id/tv_number"
@@ -54,38 +139,47 @@
app:layout_constraintTop_toTopOf="parent"
tools:text="x100" />
<LinearLayout
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/rv_gift_user_list"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
app:layout_constraintEnd_toEndOf="@+id/rl_user_head"
app:layout_constraintStart_toStartOf="@+id/rl_user_head"
app:layout_constraintTop_toBottomOf="@+id/tv_gift_name">
<TextView
android:id="@+id/tv_price33"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="2dp"
android:text="10000"
android:textColor="@color/color_FFFFBC00"
android:textSize="11sp"
android:drawableStart="@mipmap/jinb"
/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="*"
android:textColor="#9C9C9C"
android:textSize="@dimen/sp_11"
android:visibility="gone" />
android:layout_height="20dp"
android:layout_marginStart="10dp"
android:layout_marginTop="5dp"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="1"
android:textColor="@color/color_FF7185FF"
android:textSize="@dimen/sp_11"
android:visibility="gone"/>
</LinearLayout>
<!-- <LinearLayout-->
<!-- android:layout_width="wrap_content"-->
<!-- android:layout_height="wrap_content"-->
<!-- android:orientation="horizontal"-->
<!-- app:layout_constraintEnd_toEndOf="@+id/rl_user_head"-->
<!-- app:layout_constraintStart_toStartOf="@+id/rl_user_head"-->
<!-- app:layout_constraintTop_toBottomOf="@+id/tv_gift_name">-->
<!-- <TextView-->
<!-- android:id="@+id/tv_price33"-->
<!-- android:layout_width="wrap_content"-->
<!-- android:layout_height="wrap_content"-->
<!-- android:layout_marginTop="2dp"-->
<!-- android:text="10000"-->
<!-- android:textColor="@color/color_FFFFBC00"-->
<!-- android:textSize="11sp"-->
<!-- android:drawableStart="@mipmap/jinb"-->
<!-- />-->
<!-- <TextView-->
<!-- android:layout_width="wrap_content"-->
<!-- android:layout_height="wrap_content"-->
<!-- android:text="*"-->
<!-- android:textColor="#9C9C9C"-->
<!-- android:textSize="@dimen/sp_11"-->
<!-- android:visibility="gone" />-->
<!-- <TextView-->
<!-- android:layout_width="wrap_content"-->
<!-- android:layout_height="wrap_content"-->
<!-- android:text="1"-->
<!-- android:textColor="@color/color_FF7185FF"-->
<!-- android:textSize="@dimen/sp_11"-->
<!-- android:visibility="gone"/>-->
<!-- </LinearLayout>-->
</androidx.constraintlayout.widget.ConstraintLayout>

View File

@@ -1,201 +1,246 @@
<?xml version="1.0" encoding="utf-8"?>
<layout 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"
>
xmlns:tools="http://schemas.android.com/tools">
<data>
</data>
<LinearLayout
<data></data>
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<com.qxcm.moduleutil.widget.CustomTopBar
android:id="@+id/top_bar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:TopBarTitle="我的房间"
android:layout_marginStart="@dimen/dp_16"
android:layout_marginEnd="@dimen/dp_16"
/>
<com.example.moduletablayout.CustomSlidingTabLayout
android:id="@+id/coustom_sliding_tab_layout"
android:layout_width="match_parent"
android:layout_height="@dimen/dp_48"
app:tl_indicator_gravity="BOTTOM"
app:tl_indicator_margin_top="@dimen/dp_40"
app:tl_showCateIndicator="true"
app:tl_tab_space_equal="true"
app:tl_textBold="BOTH"
app:tl_textSelectColor="@color/color_FFFFBB00"
app:tl_textSelectedSize="@dimen/sp_16"
app:tl_textUnselectColor="@color/color_FF999999"
app:tl_textsize="@dimen/sp_16"
android:visibility="gone"/>
<!-- <androidx.viewpager.widget.ViewPager-->
<!-- android:id="@+id/viewpager"-->
<!-- android:layout_width="match_parent"-->
<!-- android:layout_height="match_parent"-->
<!-- android:layout_marginTop="@dimen/dp_20" />-->
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="@dimen/dp_34"
android:layout_marginTop="@dimen/dp_12"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">
android:layout_height="match_parent">
<LinearLayout
android:id="@+id/ll_rank"
android:layout_width="match_parent"
android:layout_height="29dp"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:gravity="center_vertical"
android:orientation="horizontal">
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:layout_gravity="center"
android:layout_marginStart="@dimen/dp_17"
android:gravity="center"
android:orientation="vertical">
<TextView
android:id="@+id/tv_charm"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:text="我创建的"
android:textColor="#333333 "
android:textSize="@dimen/sp_14" />
<View
android:id="@+id/v_line"
android:layout_width="40dp"
android:layout_height="4dp"
android:layout_marginTop="-3dp"
android:background="@mipmap/tab_x" />
</LinearLayout>
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:layout_gravity="center"
android:gravity="center"
android:layout_marginStart="@dimen/dp_7"
android:orientation="vertical">
<TextView
android:id="@+id/tv_wealth"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:text="我主持的"
android:textColor="#999999"
android:textSize="@dimen/sp_14" />
<View
android:id="@+id/v_line2"
android:layout_width="40dp"
android:layout_height="4dp"
android:layout_marginTop="-3dp"
android:visibility="gone"
android:background="@mipmap/tab_x" />
</LinearLayout>
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:layout_gravity="center"
android:gravity="center"
android:layout_marginStart="@dimen/dp_7"
android:orientation="vertical">
<TextView
android:id="@+id/tv_manage"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:text="我管理的"
android:textColor="#999999"
android:textSize="@dimen/sp_14" />
<View
android:id="@+id/v_line3"
android:layout_width="40dp"
android:layout_height="4dp"
android:layout_marginTop="-3dp"
android:visibility="gone"
android:background="@mipmap/tab_x" />
</LinearLayout>
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:layout_gravity="center"
android:gravity="center"
android:layout_marginStart="@dimen/dp_7"
android:orientation="vertical">
<TextView
android:id="@+id/tv_interest"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:text="我关注的"
android:textColor="#999999"
android:textSize="@dimen/sp_14" />
<View
android:id="@+id/v_line4"
android:layout_width="40dp"
android:layout_height="4dp"
android:layout_marginTop="-3dp"
android:visibility="gone"
android:background="@mipmap/tab_x" />
</LinearLayout>
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="0.3"
android:layout_gravity="center"
android:gravity="center"
android:layout_marginStart="@dimen/dp_20"
android:orientation="vertical">
</LinearLayout>
</LinearLayout>
</RelativeLayout>
<com.qxcm.moduleutil.widget.ScrollViewPager
android:id="@+id/view_pager"
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
android:orientation="vertical"
app:layout_constraintTop_toTopOf="parent">
<com.qxcm.moduleutil.widget.CustomTopBar
android:id="@+id/top_bar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/dp_16"
android:layout_marginEnd="@dimen/dp_16"
app:TopBarTitle="我的房间"
/>
<com.example.moduletablayout.CustomSlidingTabLayout
android:id="@+id/coustom_sliding_tab_layout"
android:layout_width="match_parent"
android:layout_height="@dimen/dp_48"
android:visibility="gone"
app:tl_indicator_gravity="BOTTOM"
app:tl_indicator_margin_top="@dimen/dp_40"
app:tl_showCateIndicator="true"
app:tl_tab_space_equal="true"
app:tl_textBold="BOTH"
app:tl_textSelectColor="@color/color_FFFFBB00"
app:tl_textSelectedSize="@dimen/sp_16"
app:tl_textUnselectColor="@color/color_FF999999"
app:tl_textsize="@dimen/sp_16" />
<!-- <androidx.viewpager.widget.ViewPager-->
<!-- android:id="@+id/viewpager"-->
<!-- android:layout_width="match_parent"-->
<!-- android:layout_height="match_parent"-->
<!-- android:layout_marginTop="@dimen/dp_20" />-->
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="@dimen/dp_34"
android:layout_marginTop="@dimen/dp_12"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">
<LinearLayout
android:id="@+id/ll_rank"
android:layout_width="match_parent"
android:layout_height="29dp"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:gravity="center_vertical"
android:orientation="horizontal">
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_gravity="center"
android:layout_marginStart="@dimen/dp_17"
android:layout_weight="1"
android:gravity="center"
android:orientation="vertical">
<TextView
android:id="@+id/tv_charm"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:text="我创建的"
android:textColor="#333333 "
android:textSize="@dimen/sp_14" />
<View
android:id="@+id/v_line"
android:layout_width="40dp"
android:layout_height="4dp"
android:layout_marginTop="-3dp"
android:background="@mipmap/tab_x" />
</LinearLayout>
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_gravity="center"
android:layout_marginStart="@dimen/dp_7"
android:layout_weight="1"
android:gravity="center"
android:orientation="vertical">
<TextView
android:id="@+id/tv_wealth"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:text="我主持的"
android:textColor="#999999"
android:textSize="@dimen/sp_14" />
<View
android:id="@+id/v_line2"
android:layout_width="40dp"
android:layout_height="4dp"
android:layout_marginTop="-3dp"
android:background="@mipmap/tab_x"
android:visibility="gone" />
</LinearLayout>
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_gravity="center"
android:layout_marginStart="@dimen/dp_7"
android:layout_weight="1"
android:gravity="center"
android:orientation="vertical">
<TextView
android:id="@+id/tv_manage"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:text="我管理的"
android:textColor="#999999"
android:textSize="@dimen/sp_14" />
<View
android:id="@+id/v_line3"
android:layout_width="40dp"
android:layout_height="4dp"
android:layout_marginTop="-3dp"
android:background="@mipmap/tab_x"
android:visibility="gone" />
</LinearLayout>
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_gravity="center"
android:layout_marginStart="@dimen/dp_7"
android:layout_weight="1"
android:gravity="center"
android:orientation="vertical">
<TextView
android:id="@+id/tv_interest"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:text="我关注的"
android:textColor="#999999"
android:textSize="@dimen/sp_14" />
<View
android:id="@+id/v_line4"
android:layout_width="40dp"
android:layout_height="4dp"
android:layout_marginTop="-3dp"
android:background="@mipmap/tab_x"
android:visibility="gone" />
</LinearLayout>
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_gravity="center"
android:layout_marginStart="@dimen/dp_20"
android:layout_weight="0.3"
android:gravity="center"
android:orientation="vertical">
</LinearLayout>
</LinearLayout>
</RelativeLayout>
<com.qxcm.moduleutil.widget.ScrollViewPager
android:id="@+id/view_pager"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
</LinearLayout>
<com.qxcm.moduleutil.widget.DropView
android:id="@+id/ll"
android:layout_width="wrap_content"
android:layout_height="@dimen/dp_52"
android:layout_marginBottom="@dimen/dp_100"
android:gravity="center_vertical"
android:orientation="horizontal"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
app:layout_constraintTop_toTopOf="parent"
android:visibility="gone"
tools:visibility="visible">
<com.qxcm.moduleutil.widget.GifAvatarOvalView
android:id="@+id/riv"
android:layout_width="@dimen/dp_45"
android:layout_height="@dimen/dp_45"
android:layout_gravity="center_vertical"
android:layout_margin="@dimen/dp_4"
android:src="@mipmap/default_avatar"
app:gav_border_color="#FFF"
app:gav_border_width="@dimen/dp_2"
app:riv_border_color="#FFF"
app:riv_border_width="@dimen/dp_2"
app:riv_oval="true" />
<View
android:layout_width="@dimen/dp_1"
android:layout_height="@dimen/dp_20"
android:layout_gravity="center_vertical"
android:layout_marginLeft="@dimen/dp_7"
android:layout_marginRight="@dimen/dp_7"
android:background="#FFFFFFFF"
android:visibility="visible" />
</LinearLayout>
<ImageView
android:id="@+id/iv_guanbi"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginRight="@dimen/dp_14"
android:src="@mipmap/icon_guanbi" />
</com.qxcm.moduleutil.widget.DropView>
</androidx.constraintlayout.widget.ConstraintLayout>
</layout>

View File

@@ -15,17 +15,17 @@
<com.scwang.smartrefresh.layout.SmartRefreshLayout
android:id="@+id/smart_refresh_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_height="match_parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:srlEnableLoadMore="false"
app:srlEnableRefresh="false">
app:srlEnableLoadMore="true"
app:srlEnableRefresh="true">
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/recycle_view"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_height="match_parent"
android:paddingStart="@dimen/dp_9"
android:nestedScrollingEnabled="false" />
</com.scwang.smartrefresh.layout.SmartRefreshLayout>

View File

@@ -9,7 +9,7 @@
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_height="match_parent"
android:paddingStart="@dimen/dp_6"
>
@@ -17,17 +17,17 @@
<com.scwang.smartrefresh.layout.SmartRefreshLayout
android:id="@+id/smart_refresh_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_height="match_parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:srlEnableLoadMore="false"
app:srlEnableRefresh="false">
app:srlEnableLoadMore="true"
app:srlEnableRefresh="true">
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/recycle_view"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_height="match_parent"
android:paddingStart="@dimen/dp_9"
android:nestedScrollingEnabled="false" />
</com.scwang.smartrefresh.layout.SmartRefreshLayout>

View File

@@ -100,8 +100,7 @@
android:text="今日收益"
android:textColor="#ff999999"
android:textSize="@dimen/sp_12"
app:layout_constraintEnd_toStartOf="@+id/rl_mx"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintEnd_toEndOf="@+id/tv_sy"
app:layout_constraintTop_toBottomOf="@id/tv_sy"
/>

View File

@@ -2,29 +2,43 @@
<layout 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">
<data>
</data>
<data></data>
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="6dp">
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/rv_my_room_list"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingTop="@dimen/dp_5"
android:paddingBottom="@dimen/dp_10"
tools:listitem="@layout/room_fragment_my_room_list"
/>
<com.scwang.smartrefresh.layout.SmartRefreshLayout
android:id="@+id/smart_refresh_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:srlEnableLoadMore="true"
app:srlEnableRefresh="true">
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/rv_my_room_list"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingTop="@dimen/dp_5"
android:paddingBottom="@dimen/dp_10"
tools:listitem="@layout/room_fragment_my_room_list" />
</com.scwang.smartrefresh.layout.SmartRefreshLayout>
/>
<TextView
android:id="@+id/tv_no_data"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:padding="@dimen/dp_10"
android:text="暂无数据"
android:textColor="@color/color_FF333333"
android:textSize="@dimen/sp_14"
android:gravity="center"
android:padding="@dimen/dp_10"
android:visibility="gone"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent"

View File

@@ -103,7 +103,7 @@
android:layout_width="wrap_content"
android:layout_height="@dimen/dp_18"
android:layout_marginStart="@dimen/dp_6"
android:text="99"
android:text="0"
android:textColor="@color/color_FFFFF0F0"
android:textSize="@dimen/sp_12" />

View File

@@ -22,7 +22,7 @@
android:layout_marginTop="@dimen/dp_60"
android:background="@drawable/bg_r16_fff">
<com.qxcm.moduleutil.widget.DecorationHeadView
<com.qxcm.moduleutil.utils.MeHeadView
android:id="@+id/riv_user_head"
android:layout_width="@dimen/dp_70"
android:layout_height="@dimen/dp_70"