userHomePage add cp.
This commit is contained in:
@@ -1,13 +1,20 @@
|
||||
package com.xscm.modulemain.activity.user.fragment;
|
||||
|
||||
import static android.view.View.GONE;
|
||||
import static android.view.View.VISIBLE;
|
||||
|
||||
import android.content.Intent;
|
||||
import android.content.res.ColorStateList;
|
||||
import android.graphics.Color;
|
||||
import android.os.Bundle;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
import android.widget.ImageView;
|
||||
import android.widget.LinearLayout;
|
||||
import android.widget.TextView;
|
||||
|
||||
import androidx.annotation.Nullable;
|
||||
import androidx.constraintlayout.widget.ConstraintLayout;
|
||||
import androidx.core.content.ContextCompat;
|
||||
import androidx.fragment.app.Fragment;
|
||||
import androidx.fragment.app.FragmentManager;
|
||||
@@ -16,6 +23,8 @@ import androidx.recyclerview.widget.GridLayoutManager;
|
||||
|
||||
import com.chad.library.adapter.base.BaseQuickAdapter;
|
||||
import com.chad.library.adapter.base.BaseViewHolder;
|
||||
import com.google.android.flexbox.FlexboxLayout;
|
||||
import com.xscm.modulemain.Application;
|
||||
import com.xscm.modulemain.R;
|
||||
import com.xscm.modulemain.databinding.FragmentUserHompageBinding;
|
||||
import com.tencent.imsdk.v2.V2TIMConversation;
|
||||
@@ -46,8 +55,6 @@ public class UserHomepageFragment extends BaseMvpFragment<UserHomepagePresenter,
|
||||
private List<MyBagBean> list;
|
||||
private String userId;
|
||||
private UserInfo userInfo;
|
||||
private BaseQuickAdapter<UserTagBean, BaseViewHolder> adapter;
|
||||
private List<UserTagBean> userTagBeans = new ArrayList<>();
|
||||
private int type;
|
||||
|
||||
@Override
|
||||
@@ -107,7 +114,7 @@ public class UserHomepageFragment extends BaseMvpFragment<UserHomepagePresenter,
|
||||
list.add(new MyBagBean("动态", "1"));
|
||||
list.add(new MyBagBean("礼物墙", "2"));
|
||||
list.add(new MyBagBean("我的相册", "3"));
|
||||
mBinding.viewPager.setAdapter(new MyFragmentPagerAdapter(getChildFragmentManager(), list, userInfo.getUser_id()+""));
|
||||
mBinding.viewPager.setAdapter(new MyFragmentPagerAdapter(getChildFragmentManager(), list, userInfo.getUser_id() + ""));
|
||||
mBinding.slidingTabLayout.setViewPager(mBinding.viewPager);
|
||||
if (type == 1) {
|
||||
mBinding.slidingTabLayout.setCurrentTab(1);
|
||||
@@ -115,11 +122,11 @@ public class UserHomepageFragment extends BaseMvpFragment<UserHomepagePresenter,
|
||||
mBinding.slidingTabLayout.setCurrentTab(0);
|
||||
}
|
||||
mBinding.headerInfo.rivUserHead.setData(userInfo.getAvatar(), "", userInfo.getNobility_image());
|
||||
String sex = userInfo.getSex()==1?"男":"女";
|
||||
mBinding.headerInfo.tvUserId.setText(sex+" | ID:"+userInfo.getUser_code());
|
||||
String sex = userInfo.getSex() == 1 ? "男" : "女";
|
||||
mBinding.headerInfo.tvUserId.setText(sex + "|" + userInfo.getAge() + "岁 " + "ID:" + userInfo.getUser_code());
|
||||
|
||||
mBinding.headerInfo.tvNickName.setText(userInfo.getNickname());
|
||||
if (!userInfo.getNickname_color().isEmpty()){
|
||||
if (!userInfo.getNickname_color().isEmpty()) {
|
||||
mBinding.headerInfo.tvNickName.setStartColor(Color.parseColor(userInfo.getNickname_color()));
|
||||
mBinding.headerInfo.tvNickName.setShineColor(Color.parseColor(userInfo.getNickname_color()));
|
||||
mBinding.headerInfo.tvNickName.setEndColor(Color.parseColor(userInfo.getNickname_color()));
|
||||
@@ -128,56 +135,59 @@ public class UserHomepageFragment extends BaseMvpFragment<UserHomepagePresenter,
|
||||
}
|
||||
// mBinding.headerInfo.tvNickName.setTextColor( (userInfo.getNickname_color()!=null && !userInfo.getNickname_color().equals(""))?Color.parseColor(userInfo.getNickname_color()):Color.parseColor("#333333"));
|
||||
// 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());
|
||||
|
||||
|
||||
if (userInfo.getIs_use_code()==1){
|
||||
if (userInfo.getIs_use_code() == 1) {
|
||||
mBinding.headerInfo.imBeautiful.setVisibility(View.VISIBLE);
|
||||
}else {
|
||||
} else {
|
||||
mBinding.headerInfo.imBeautiful.setVisibility(View.GONE);
|
||||
}
|
||||
|
||||
|
||||
LinearLayout llContainer = mBinding.headerInfo.llImageContainer;
|
||||
llContainer.removeAllViews(); // 清空旧的 ImageView
|
||||
if (!userInfo.getIcon().isEmpty()){
|
||||
mBinding.headerInfo.flexEntry.setVisibility(VISIBLE);
|
||||
for (String url : userInfo.getIcon()) {
|
||||
if (url.contains("http")) {
|
||||
ImageView imageView1 = new ImageView(Application.getInstance());
|
||||
LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(
|
||||
LinearLayout.LayoutParams.WRAP_CONTENT,
|
||||
Application.getInstance().getResources().getDimensionPixelSize(com.xscm.moduleutil.R.dimen.dp_20)
|
||||
);
|
||||
params.setMargins(0, 0,Application.getInstance().getResources().getDimensionPixelSize(com.xscm.moduleutil.R.dimen.dp_10), 0); // 右边距
|
||||
imageView1.setLayoutParams(params);
|
||||
imageView1.setScaleType(ImageView.ScaleType.FIT_START);
|
||||
|
||||
List<String> images = userInfo.getIcon(); // 获取图片列表
|
||||
|
||||
for (String url : images) {
|
||||
if (url.contains("http")) {
|
||||
ImageView imageView = new ImageView(getContext());
|
||||
LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(
|
||||
getContext().getResources().getDimensionPixelSize(com.xscm.moduleutil.R.dimen.dp_57),
|
||||
getContext().getResources().getDimensionPixelSize(com.xscm.moduleutil.R.dimen.dp_15)
|
||||
);
|
||||
params.setMargins(0, 0, getContext().getResources().getDimensionPixelSize(com.xscm.moduleutil.R.dimen.dp_5), 0); // 右边距
|
||||
imageView.setLayoutParams(params);
|
||||
imageView.setScaleType(ImageView.ScaleType.CENTER_CROP);
|
||||
|
||||
// 使用 Glide 加载图片
|
||||
ImageUtils.loadHeadCC(url, imageView);
|
||||
|
||||
llContainer.addView(imageView);
|
||||
// 使用 Glide 加载图片
|
||||
ImageUtils.loadHeadCC(url, imageView1,params);
|
||||
mBinding.headerInfo.flexEntry.addView(imageView1);
|
||||
}
|
||||
}
|
||||
}else {
|
||||
mBinding.headerInfo.flexEntry.setVisibility(GONE);
|
||||
}
|
||||
mBinding.headerInfo.recycleView2.setLayoutManager(new GridLayoutManager(getContext(), 3));
|
||||
|
||||
adapter = new BaseQuickAdapter<UserTagBean, BaseViewHolder>(R.layout.item_tag, userTagBeans) {
|
||||
|
||||
|
||||
@Override
|
||||
protected void convert(BaseViewHolder helper, UserTagBean item) {
|
||||
helper.setText(R.id.tv, item.getTag_name());
|
||||
|
||||
}
|
||||
|
||||
};
|
||||
mBinding.headerInfo.recycleView2.setAdapter(adapter);
|
||||
if (userInfo != null) {
|
||||
|
||||
if (userInfo.getTag_list() != null && !userInfo.getTag_list().isEmpty()) {
|
||||
adapter.setNewData(userInfo.getTag_list());
|
||||
for (UserTagBean tagBean : userInfo.getTag_list()) {
|
||||
TextView textView = new TextView(Application.getInstance());
|
||||
textView.setBackground(getResources().getDrawable(R.drawable.shape_15));
|
||||
textView.setTextSize(12);
|
||||
textView.setPadding(30, 10, 30, 10);
|
||||
textView.setText(tagBean.getTag_name());
|
||||
textView.setTextColor(Color.parseColor("#FF3ABC6D"));
|
||||
textView.setBackgroundTintList(ColorStateList.valueOf(Color.parseColor("#1A3ABC6D")));
|
||||
|
||||
FlexboxLayout.LayoutParams params = new FlexboxLayout.LayoutParams(
|
||||
ViewGroup.LayoutParams.WRAP_CONTENT,
|
||||
ViewGroup.LayoutParams.WRAP_CONTENT
|
||||
);
|
||||
|
||||
params.setMargins(0, 15, 15, 0);
|
||||
textView.setLayoutParams( params);
|
||||
mBinding.headerInfo.flexText.addView(textView);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -185,19 +195,91 @@ public class UserHomepageFragment extends BaseMvpFragment<UserHomepagePresenter,
|
||||
mBinding.headerInfo.tvGz.setOnClickListener(this::onClick);
|
||||
mBinding.headerInfo.tvGsSx.setOnClickListener(this::onClick);
|
||||
refreshView();
|
||||
try {
|
||||
if (userInfo.getGuild()==null || userInfo.getGuild().isEmpty()){
|
||||
mBinding.headerInfo.tvGH.setText("所属公会:无");
|
||||
}else {
|
||||
mBinding.headerInfo.tvGH.setText("所属公会:"+userInfo.getGuild());
|
||||
}
|
||||
} catch (Exception ignored) {
|
||||
mBinding.headerInfo.tvGH.setText("所属公会:无");
|
||||
if (userInfo.getGuild() == null || userInfo.getGuild().isEmpty()) {
|
||||
mBinding.headerInfo.tvGH.setVisibility(View.GONE);
|
||||
} else {
|
||||
mBinding.headerInfo.tvGH.setVisibility(View.VISIBLE);
|
||||
mBinding.headerInfo.tvGH.setText(userInfo.getGuild());
|
||||
}
|
||||
|
||||
|
||||
showCp();
|
||||
}
|
||||
private void showCp() {
|
||||
if (userInfo.getCp_info() != null) {
|
||||
mBinding.headerInfo.llCp.setVisibility(VISIBLE);
|
||||
mBinding.headerInfo.rlCpAnim.setVisibility(VISIBLE);
|
||||
ImageUtils.loadHeadCC(userInfo.getCp_info().user_info1.avatar, mBinding.headerInfo.userNav1);
|
||||
ImageUtils.loadHeadCC(userInfo.getCp_info().user_info2.avatar, mBinding.headerInfo.userNav2);
|
||||
mBinding.headerInfo.tvNickname1.setText(userInfo.getCp_info().user_info1.nickname);
|
||||
mBinding.headerInfo.tvNickname2.setText(userInfo.getCp_info().user_info2.nickname);
|
||||
mBinding.headerInfo.tvCpLv.setText("LV" + userInfo.getCp_info().level + " " + userInfo.getCp_info().name);
|
||||
|
||||
long xd = Long.parseLong(userInfo.getCp_info().exp);
|
||||
|
||||
if (xd >= 10000) {
|
||||
mBinding.headerInfo.tvCpNum.setText(String.format("%.2fw", xd / 10000.0f));
|
||||
} else {
|
||||
mBinding.headerInfo.tvCpNum.setText(String.valueOf(xd));
|
||||
}
|
||||
|
||||
mBinding.headerInfo.cpAnim.setSource(userInfo.getCp_info().pendant, 1);
|
||||
|
||||
|
||||
ImageUtils.loadHeadCC(userInfo.getCp_info().user_info1.avatar, mBinding.headerInfo.ivCp1);
|
||||
ImageUtils.loadHeadCC(userInfo.getCp_info().user_info2.avatar, mBinding.headerInfo.ivCp2);
|
||||
ConstraintLayout.LayoutParams params = new ConstraintLayout.LayoutParams(ConstraintLayout.LayoutParams.WRAP_CONTENT,
|
||||
ConstraintLayout.LayoutParams.WRAP_CONTENT);
|
||||
//挂件上的头像位置:0-上,1-右上,2-右,3-右下,4-下,5-左下,6-左,7-左上'
|
||||
switch (Integer.parseInt(userInfo.getCp_info().direction)) {
|
||||
case 0:
|
||||
params.startToStart = ConstraintLayout.LayoutParams.PARENT_ID;
|
||||
params.endToEnd = ConstraintLayout.LayoutParams.PARENT_ID;
|
||||
params.bottomToTop = mBinding.headerInfo.topGuideline.getId();
|
||||
mBinding.headerInfo.llCpAnimAvatar.setOrientation(LinearLayout.HORIZONTAL);
|
||||
break;
|
||||
case 1:
|
||||
mBinding.headerInfo.llCpAnimAvatar.setOrientation(LinearLayout.VERTICAL);
|
||||
params.endToEnd = ConstraintLayout.LayoutParams.PARENT_ID;
|
||||
params.topToTop = ConstraintLayout.LayoutParams.PARENT_ID;
|
||||
break;
|
||||
case 2:
|
||||
mBinding.headerInfo.llCpAnimAvatar.setOrientation(LinearLayout.VERTICAL);
|
||||
params.endToEnd = ConstraintLayout.LayoutParams.PARENT_ID;
|
||||
params.bottomToBottom = ConstraintLayout.LayoutParams.PARENT_ID;
|
||||
params.topToTop = ConstraintLayout.LayoutParams.PARENT_ID;
|
||||
break;
|
||||
case 3:
|
||||
mBinding.headerInfo.llCpAnimAvatar.setOrientation(LinearLayout.VERTICAL);
|
||||
params.endToEnd = ConstraintLayout.LayoutParams.PARENT_ID;
|
||||
params.bottomToBottom = ConstraintLayout.LayoutParams.PARENT_ID;
|
||||
break;
|
||||
case 4:
|
||||
mBinding.headerInfo.llCpAnimAvatar.setOrientation(LinearLayout.HORIZONTAL);
|
||||
params.startToStart = ConstraintLayout.LayoutParams.PARENT_ID;
|
||||
params.endToEnd = ConstraintLayout.LayoutParams.PARENT_ID;
|
||||
params.topToBottom = mBinding.headerInfo.bottomGuideline.getId();
|
||||
params.bottomToBottom = ConstraintLayout.LayoutParams.PARENT_ID;
|
||||
break;
|
||||
case 5:
|
||||
mBinding.headerInfo.llCpAnimAvatar.setOrientation(LinearLayout.VERTICAL);
|
||||
params.startToStart = ConstraintLayout.LayoutParams.PARENT_ID;
|
||||
params.bottomToBottom = ConstraintLayout.LayoutParams.PARENT_ID;
|
||||
break;
|
||||
case 6:
|
||||
mBinding.headerInfo.llCpAnimAvatar.setOrientation(LinearLayout.VERTICAL);
|
||||
params.startToStart = ConstraintLayout.LayoutParams.PARENT_ID;
|
||||
params.bottomToBottom = ConstraintLayout.LayoutParams.PARENT_ID;
|
||||
params.topToTop = ConstraintLayout.LayoutParams.PARENT_ID;
|
||||
break;
|
||||
case 7:
|
||||
mBinding.headerInfo.llCpAnimAvatar.setOrientation(LinearLayout.VERTICAL);
|
||||
params.startToStart = ConstraintLayout.LayoutParams.PARENT_ID;
|
||||
params.topToTop = ConstraintLayout.LayoutParams.PARENT_ID;
|
||||
break;
|
||||
}
|
||||
mBinding.headerInfo.llCpAnimAvatar.setLayoutParams(params);
|
||||
}
|
||||
}
|
||||
private void refreshView() {
|
||||
if (SpUtil.getUserId() == userInfo.getUser_id()) {
|
||||
mBinding.headerInfo.tvGsSx.setVisibility(View.GONE);
|
||||
@@ -207,19 +289,18 @@ public class UserHomepageFragment extends BaseMvpFragment<UserHomepagePresenter,
|
||||
mBinding.headerInfo.tvGz.setVisibility(View.VISIBLE);
|
||||
if (userInfo.getIs_follow() == 1) {
|
||||
// mBinding.headerInfo.tvGz.setBackground(getResources().getDrawable(com.xscm.moduleutil.R.mipmap.yigz));
|
||||
ThemeableDrawableUtils.setThemeableRoundedBackground( mBinding.headerInfo.tvGz, ContextCompat.getColor(getContext(), com.xscm.moduleutil.R.color.EFF2F8), 34);
|
||||
mBinding.headerInfo.tvGz.setTextColor(Color.BLACK);
|
||||
ThemeableDrawableUtils.setThemeableRoundedBackground(mBinding.headerInfo.tvGz, ContextCompat.getColor(getContext(), com.xscm.moduleutil.R.color.EFF2F8), 34);
|
||||
mBinding.headerInfo.tvGz.setText("已关注");
|
||||
mBinding.headerInfo.tvGz.setBackgroundTintList(ColorStateList.valueOf(Color.parseColor("#ff999999")));
|
||||
} else {
|
||||
// mBinding.headerInfo.tvGz.setBackground(getResources().getDrawable(com.xscm.moduleutil.R.mipmap.gz));
|
||||
|
||||
ThemeableDrawableUtils.setThemeableRoundedBackground( mBinding.headerInfo.tvGz, ColorManager.getInstance().getPrimaryColorInt(), 34);
|
||||
mBinding.headerInfo.tvGz.setTextColor(ColorManager.getInstance().getButtonColorInt());
|
||||
mBinding.headerInfo.tvGz.setText("关注");
|
||||
ThemeableDrawableUtils.setThemeableRoundedBackground(mBinding.headerInfo.tvGz, ColorManager.getInstance().getPrimaryColorInt(), 34);
|
||||
mBinding.headerInfo.tvGz.setText("+ 关注");
|
||||
mBinding.headerInfo.tvGz.setBackgroundTintList(ColorStateList.valueOf(Color.parseColor("#ff52FF96")));
|
||||
}
|
||||
|
||||
|
||||
|
||||
if (userInfo.getRoom_id() == null || userInfo.getRoom_id().equals("0")) {
|
||||
mBinding.headerInfo.tvGsSx.setBackground(getResources().getDrawable(com.xscm.moduleutil.R.mipmap.six));
|
||||
} else {
|
||||
@@ -239,7 +320,7 @@ public class UserHomepageFragment extends BaseMvpFragment<UserHomepagePresenter,
|
||||
intent.putExtra(TUIConstants.TUIChat.CHAT_TYPE, V2TIMConversation.V2TIM_C2C);
|
||||
startActivity(intent);
|
||||
} else {
|
||||
RoomManager.getInstance().fetchRoomDataAndEnter(getActivity(), userInfo.getRoom_id(),"",null);
|
||||
RoomManager.getInstance().fetchRoomDataAndEnter(getActivity(), userInfo.getRoom_id(), "", null);
|
||||
|
||||
// ARouter.getInstance().build(ARouteConstants.ROOM_DETAILS).withString("roomId", userInfo.getRoom_id()).navigation();
|
||||
}
|
||||
|
||||
@@ -254,10 +254,10 @@ public class RoomUserInfoFragment extends BaseMvpDialogFragment<RoomUserPresente
|
||||
} else if (id == R.id.more_button) {
|
||||
RelationshipFragment.show(user_id, guanType, getParentFragmentManager());
|
||||
dismiss();
|
||||
} else if (id == R.id.textView1) {
|
||||
dianj(1);
|
||||
} else if (id == R.id.textView2) {
|
||||
dianj(2);
|
||||
// } else if (id == R.id.textView1) {
|
||||
// dianj(1);
|
||||
// } else if (id == R.id.textView2) {
|
||||
// dianj(2);
|
||||
} else if (id == R.id.im_qml) {
|
||||
MvpPre.clearUserCharm(room_id, user_id);
|
||||
} else if (id == R.id.im_gs) {
|
||||
@@ -475,9 +475,10 @@ public class RoomUserInfoFragment extends BaseMvpDialogFragment<RoomUserPresente
|
||||
if (userInfo.getGuild().isEmpty()) {
|
||||
mBinding.tvGh.setText("所属公会:无");
|
||||
} else {
|
||||
if (userInfo.getUser_id() != SpUtil.getUserId()) {
|
||||
if (userInfo.getUser_id() != SpUtil.getUserId() && !userInfo.getGuild().equals(SpUtil.getUserInfo().getGuild())){
|
||||
mBinding.tvJoinGuild.setVisibility(VISIBLE);
|
||||
}
|
||||
|
||||
mBinding.tvGh.setText("所属公会:" + userInfo.getGuild());
|
||||
}
|
||||
} else {
|
||||
@@ -495,7 +496,7 @@ public class RoomUserInfoFragment extends BaseMvpDialogFragment<RoomUserPresente
|
||||
});
|
||||
|
||||
updateUIBasedOnTypeAndUser();
|
||||
dianj(1);
|
||||
// dianj(1);
|
||||
showCp();
|
||||
}
|
||||
|
||||
@@ -506,8 +507,15 @@ public class RoomUserInfoFragment extends BaseMvpDialogFragment<RoomUserPresente
|
||||
ImageUtils.loadHeadCC(userInfo.getCp_info().user_info2.avatar, mBinding.userNav2);
|
||||
mBinding.tvNickname1.setText(userInfo.getCp_info().user_info1.nickname);
|
||||
mBinding.tvNickname2.setText(userInfo.getCp_info().user_info2.nickname);
|
||||
mBinding.tvCpLv.setText("Lv" + userInfo.getCp_info().level + " " + userInfo.getCp_info().name);
|
||||
mBinding.tvCpNum.setText(userInfo.getCp_info().exp);
|
||||
mBinding.tvCpLv.setText("LV" + userInfo.getCp_info().level + " " + userInfo.getCp_info().name);
|
||||
|
||||
long xd = Long.parseLong(userInfo.getCp_info().exp);
|
||||
|
||||
if (xd >= 10000) {
|
||||
mBinding.tvCpNum.setText(String.format("%.2fw", xd / 10000.0f));
|
||||
} else {
|
||||
mBinding.tvCpNum.setText(String.valueOf(xd));
|
||||
}
|
||||
|
||||
mBinding.cpAnim.setSource(userInfo.getCp_info().pendant, 1);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user