个人页面

This commit is contained in:
18142669586 2023-10-07 14:11:12 +08:00
parent e3fc7786a8
commit cd74b7140e
7 changed files with 415 additions and 122 deletions

View File

@ -19,6 +19,7 @@ import android.widget.TextView;
import android.widget.Toast;
import androidx.recyclerview.widget.GridLayoutManager;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import com.alibaba.fastjson.JSON;
@ -31,8 +32,11 @@ import com.opensource.svgaplayer.SVGAImageView;
import com.opensource.svgaplayer.SVGAParser;
import com.opensource.svgaplayer.SVGAVideoEntity;
import com.shayu.onetoone.R;
import com.shayu.onetoone.adapter.MainMeAdapter;
import com.shayu.onetoone.bean.SlideBean;
import com.shayu.onetoone.utils.MainHttpConsts;
import com.shayu.onetoone.utils.MainHttpUtil;
import com.shayu.onetoone.view.CustomMyViewHolder;
import com.yunbao.common.CommonAppConfig;
import com.yunbao.common.CommonAppContext;
import com.yunbao.common.Constants;
@ -94,7 +98,7 @@ public class MyFragment extends BaseFragment implements OnItemClickListener<User
private TextView mFans;
private boolean mPaused;
private RecyclerView mRecyclerView;
// private MainMeAdapter mAdapter;
private MainMeAdapter mAdapter;
private TextView signature;
private TextView coin, gold, star_coin;//金豆,钻石,星币
private TextView btnCopy;
@ -178,7 +182,7 @@ public class MyFragment extends BaseFragment implements OnItemClickListener<User
});
mRecyclerView = (RecyclerView) itemView.findViewById(R.id.recyclerView);
mRecyclerView.setHasFixedSize(true);
mRecyclerView.setLayoutManager(new GridLayoutManager(mContext, 4, GridLayoutManager.VERTICAL, false));
mRecyclerView.setLayoutManager(new LinearLayoutManager(getActivity()));
banner_me.setOutlineProvider(new ViewOutlineProvider() {
@Override
public void getOutline(View view, Outline outline) {
@ -280,18 +284,18 @@ public class MyFragment extends BaseFragment implements OnItemClickListener<User
}
};
// private List<SlideBean> mBannerListNew = new ArrayList<>();
private List<SlideBean> mBannerListNew = new ArrayList<>();
private void showData(UserBean u, List<UserItemBean> list) {
// mBannerList.clear();
// mBannerListNew.clear();
mBannerList.clear();
mBannerListNew.clear();
if (!StringUtil.isEmpty(u.getSlide())) {
// mBannerListNew.addAll(JSON.parseArray(u.getSlide(), SlideBean.class));
// for (SlideBean bean : mBannerListNew) {
// if (bean.getSlide_status().equals("1")) {
// mBannerList.add(bean);
// }
// }
mBannerListNew.addAll(JSON.parseArray(u.getSlide(), SlideBean.class));
for (SlideBean bean : mBannerListNew) {
if (bean.getSlide_status().equals("1")) {
mBannerList.add(bean);
}
}
}
showBanner();
ImgLoader.displayAvatar(mContext, u.getAvatar(), mAvatar);
@ -398,13 +402,13 @@ public class MyFragment extends BaseFragment implements OnItemClickListener<User
beanStetting = userItemBean;
}
}
// if (mAdapter == null) {
// mAdapter = new MainMeAdapter(mContext, listNow);
// mAdapter.setOnItemClickListener(this);
//// mRecyclerView.setAdapter(mAdapter);
// } else {
//// mAdapter.setList(listNow);
// }
if (mAdapter == null) {
mAdapter = new MainMeAdapter(mContext, listNow);
mAdapter.setOnItemClickListener(this);
mRecyclerView.setAdapter(mAdapter);
} else {
mAdapter.setList(listNow);
}
}
if (beanKefu != null) {
}
@ -571,62 +575,62 @@ public class MyFragment extends BaseFragment implements OnItemClickListener<User
}
// public static List<SlideBean> mBannerList = new ArrayList<>();
public static List<SlideBean> mBannerList = new ArrayList<>();
private void showBanner() {
// if (mBannerList == null || mBannerList.size() <= 0 || banner_me == null) {
// lt_advertisement.setVisibility(View.GONE);
// return;
// }
// lt_advertisement.setVisibility(View.VISIBLE);
// if (mBannerList.size() == 1) {
// banner_me.setAutoPlay(false)
// .setPages(mBannerList, new CustomMyViewHolder())
// .setDelayTime(3000)
// .setBannerStyle(BannerConfig.NOT_INDICATOR)
// .setOnBannerClickListener(new OnBannerClickListener() {
// @Override
// public void onBannerClick(List datas, int p) {
// if (mBannerList != null) {
// if (p >= 0 && p < mBannerList.size()) {
// SlideBean bean = mBannerList.get(p);
// if (!bean.getSlide_url().equals("")) {
// Constants.isTitle = true;
// String url = bean.getSlide_url() + "?uid=" + CommonAppConfig.getInstance().getUid() + "&token=" + CommonAppConfig.getInstance().getToken();
// WebViewActivity.forward(mContext, url, false, false);
// }
// }
// }
// }
// })
// .start();
// } else {
// banner_me.setAutoPlay(true)
// .setPages(mBannerList, new CustomMyViewHolder())
// .setDelayTime(3000)
// .setBannerStyle(BannerConfig.NOT_INDICATOR)
// .setOnBannerClickListener(new OnBannerClickListener() {
// @Override
// public void onBannerClick(List datas, int p) {
// if (mBannerList != null) {
// if (p >= 0 && p < mBannerList.size()) {
// SlideBean bean = mBannerList.get(p);
// if (!bean.getSlide_url().equals("")) {
// Constants.isTitle = true;
// String url = bean.getSlide_url() + "?uid=" + CommonAppConfig.getInstance().getUid() + "&token=" + CommonAppConfig.getInstance().getToken();
// RouteUtil.forwardCustomerService(url);
// /*if(bean.getSlide_id().equals("95")){
// RouteUtil.forwardCustomerService(url);
// }else {
// ZhuangBanActivity.forward(mContext, url, false);
// }*/
// }
// }
// }
// }
// })
// .start();
// }
if (mBannerList == null || mBannerList.size() <= 0 || banner_me == null) {
lt_advertisement.setVisibility(View.GONE);
return;
}
lt_advertisement.setVisibility(View.VISIBLE);
if (mBannerList.size() == 1) {
banner_me.setAutoPlay(false)
.setPages(mBannerList, new CustomMyViewHolder())
.setDelayTime(3000)
.setBannerStyle(BannerConfig.NOT_INDICATOR)
.setOnBannerClickListener(new OnBannerClickListener() {
@Override
public void onBannerClick(List datas, int p) {
if (mBannerList != null) {
if (p >= 0 && p < mBannerList.size()) {
SlideBean bean = mBannerList.get(p);
if (!bean.getSlide_url().equals("")) {
Constants.isTitle = true;
String url = bean.getSlide_url() + "?uid=" + CommonAppConfig.getInstance().getUid() + "&token=" + CommonAppConfig.getInstance().getToken();
WebViewActivity.forward(mContext, url, false, false);
}
}
}
}
})
.start();
} else {
banner_me.setAutoPlay(true)
.setPages(mBannerList, new CustomMyViewHolder())
.setDelayTime(3000)
.setBannerStyle(BannerConfig.NOT_INDICATOR)
.setOnBannerClickListener(new OnBannerClickListener() {
@Override
public void onBannerClick(List datas, int p) {
if (mBannerList != null) {
if (p >= 0 && p < mBannerList.size()) {
SlideBean bean = mBannerList.get(p);
if (!bean.getSlide_url().equals("")) {
Constants.isTitle = true;
String url = bean.getSlide_url() + "?uid=" + CommonAppConfig.getInstance().getUid() + "&token=" + CommonAppConfig.getInstance().getToken();
RouteUtil.forwardCustomerService(url);
/*if(bean.getSlide_id().equals("95")){
RouteUtil.forwardCustomerService(url);
}else {
ZhuangBanActivity.forward(mContext, url, false);
}*/
}
}
}
}
})
.start();
}
}
}

View File

@ -0,0 +1,132 @@
package com.shayu.onetoone.adapter;
import static android.os.Build.VERSION_CODES.R;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.recyclerview.widget.RecyclerView;
import com.shayu.onetoone.R;
import com.yunbao.common.bean.UserItemBean;
import com.yunbao.common.glide.ImgLoader;
import com.yunbao.common.interfaces.OnItemClickListener;
import com.yunbao.common.views.weight.ViewClicksAntiShake;
import java.util.List;
/**
* Created by cxf on 2018/9/28.
*/
public class MainMeAdapter extends RecyclerView.Adapter<MainMeAdapter.Vh> {
private static final int NORMAL = 0;
private static final int GROUP_LAST = 1;
private static final int ALL_LAST = 2;
private Context mContext;
private List<UserItemBean> mList;
private LayoutInflater mInflater;
private OnItemClickListener<UserItemBean> mOnItemClickListener;
public MainMeAdapter(Context context, List<UserItemBean> list) {
mContext = context;
mList = list;
mInflater = LayoutInflater.from(context);
}
public void setOnItemClickListener(OnItemClickListener<UserItemBean> onItemClickListener) {
mOnItemClickListener = onItemClickListener;
}
@Override
public int getItemViewType(int position) {
UserItemBean bean = mList.get(position);
if (bean.isGroupLast()) {
return GROUP_LAST;
} else if (bean.isAllLast()) {
return ALL_LAST;
} else {
return NORMAL;
}
}
public void setList(List<UserItemBean> list) {
if (list == null) {
return;
}
boolean changed = false;
if (mList.size() != list.size()) {
changed = true;
} else {
for (int i = 0, size = mList.size(); i < size; i++) {
if (!mList.get(i).equals(list.get(i))) {
changed = true;
break;
}
}
}
if (changed) {
mList = list;
notifyDataSetChanged();
}
}
@NonNull
@Override
public Vh onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
int res = 0;
// if (viewType == GROUP_LAST) {
// res = R.layout.item_main_me_1;//竖向单列表
// } else if (viewType == ALL_LAST) {
res = com.shayu.onetoone.R.layout.item_main_me_2;//横向4列
// } else {
// res = R.layout.item_main_me_0;
// }
return new Vh(mInflater.inflate(res, parent, false));
}
@Override
public void onBindViewHolder(@NonNull Vh vh, int position) {
vh.setData(mList.get(position));
}
@Override
public int getItemCount() {
return mList.size();
}
class Vh extends RecyclerView.ViewHolder {
ImageView mThumb;
TextView mName;
public Vh(View itemView) {
super(itemView);
mThumb = (ImageView) itemView.findViewById(com.shayu.onetoone.R.id.thumb);
mName = (TextView) itemView.findViewById(com.shayu.onetoone.R.id.name);
ViewClicksAntiShake.clicksAntiShake(itemView, () -> {
Object tag = itemView.getTag();
if (tag != null) {
UserItemBean bean = (UserItemBean) tag;
if (mOnItemClickListener != null) {
mOnItemClickListener.onItemClick(bean, 0);
}
}
});
}
void setData(UserItemBean bean) {
itemView.setTag(bean);
ImgLoader.display(mContext, bean.getThumb(), mThumb);
mName.setText(bean.getName());
}
}
}

View File

@ -0,0 +1,91 @@
package com.shayu.onetoone.bean;
/**
* Created by cxf on 2017/8/9.
*/
public class SlideBean {
public String listorder;
public String slide_cid;
public String slide_content;
public String slide_des;
public String slide_id;
public String slide_name;
public String slide_pic;
public String slide_status;//是否显示 1=显示 0=隐藏
public String slide_url;
public String getListorder() {
return listorder;
}
public void setListorder(String listorder) {
this.listorder = listorder;
}
public String getSlide_cid() {
return slide_cid;
}
public void setSlide_cid(String slide_cid) {
this.slide_cid = slide_cid;
}
public String getSlide_content() {
return slide_content;
}
public void setSlide_content(String slide_content) {
this.slide_content = slide_content;
}
public String getSlide_des() {
return slide_des;
}
public void setSlide_des(String slide_des) {
this.slide_des = slide_des;
}
public String getSlide_id() {
return slide_id;
}
public void setSlide_id(String slide_id) {
this.slide_id = slide_id;
}
public String getSlide_name() {
return slide_name;
}
public void setSlide_name(String slide_name) {
this.slide_name = slide_name;
}
public String getSlide_pic() {
return slide_pic;
}
public void setSlide_pic(String slide_pic) {
this.slide_pic = slide_pic;
}
public String getSlide_status() {
return slide_status;
}
public void setSlide_status(String slide_status) {
this.slide_status = slide_status;
}
public String getSlide_url() {
return slide_url;
}
public void setSlide_url(String slide_url) {
this.slide_url = slide_url;
}
}

View File

@ -0,0 +1,29 @@
package com.shayu.onetoone.view;
import android.content.Context;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import com.bumptech.glide.Glide;
import com.ms.banner.holder.BannerViewHolder;
import com.shayu.onetoone.bean.SlideBean;
public class CustomMyViewHolder implements BannerViewHolder<SlideBean> {
@Override
public View createView(Context context, int position, SlideBean data) {
// 返回mImageView页面布局
ImageView imageView = new ImageView(context);
ViewGroup.LayoutParams params = new ViewGroup.LayoutParams(
ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT
);
imageView.setLayoutParams(params);
imageView.setScaleType(ImageView.ScaleType.FIT_XY);
Glide.with(context).load(data.getSlide_pic()).into(imageView);
return imageView;
}
}

View File

@ -5,7 +5,7 @@
android:layout_height="match_parent"
android:background="@color/gray2"
android:orientation="vertical"
android:paddingBottom="50dp">
android:paddingBottom="10dp">
<ScrollView
android:layout_width="match_parent"
@ -42,11 +42,38 @@
android:layout_marginTop="42dp"
android:orientation="horizontal">
<RelativeLayout
android:layout_width="114dp"
android:layout_height="match_parent"
android:layout_marginRight="18dp"
android:gravity="center|right">
<com.makeramen.roundedimageview.RoundedImageView
android:id="@+id/avatar"
android:layout_width="86dp"
android:layout_height="86dp"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:layout_marginRight="9dp"
android:scaleType="centerCrop"
app:riv_border_color="#FFFFFF"
app:riv_border_width="2dp"
app:riv_oval="true" />
<com.opensource.svgaplayer.SVGAImageView
android:id="@+id/gift_svga"
android:layout_width="104dp"
android:layout_height="104dp"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:scaleType="centerCrop"
app:autoPlay="true" />
</RelativeLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="1"
android:gravity="center|left"
android:orientation="vertical">
<androidx.cardview.widget.CardView
@ -64,6 +91,7 @@
android:layout_height="25.25dp"
android:layout_marginStart="21dp"
android:layout_marginTop="-5dp"
android:visibility="gone"
android:background="@mipmap/icon_complete_information">
<TextView
@ -89,17 +117,10 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="用戶名稱"
android:textColor="@color/black2"
android:textColor="#D56FF0"
android:textSize="19sp"
android:textStyle="bold" />
<ImageView
android:id="@+id/btn_edit"
android:layout_width="25dp"
android:layout_height="25dp"
android:layout_marginLeft="6dp"
android:src="@mipmap/home_btn_edit" />
</LinearLayout>
<TextView
@ -200,37 +221,19 @@
android:background="@mipmap/icon_arrow_right"
android:visibility="visible" />
</LinearLayout>
</LinearLayout>
</LinearLayout>
<RelativeLayout
android:layout_width="114dp"
android:layout_height="match_parent"
android:layout_marginRight="18dp"
android:gravity="center|right">
<com.makeramen.roundedimageview.RoundedImageView
android:id="@+id/avatar"
android:layout_width="86dp"
android:layout_height="86dp"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:layout_marginRight="9dp"
android:scaleType="centerCrop"
app:riv_border_color="#FFFFFF"
app:riv_border_width="2dp"
app:riv_oval="true" />
<com.opensource.svgaplayer.SVGAImageView
android:id="@+id/gift_svga"
android:layout_width="104dp"
android:layout_height="104dp"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:scaleType="centerCrop"
app:autoPlay="true" />
</RelativeLayout>
<ImageView
android:id="@+id/btn_edit"
android:layout_width="25dp"
android:layout_height="25dp"
android:layout_marginLeft="6dp"
android:src="@mipmap/home_btn_edit" />
</LinearLayout>
@ -293,10 +296,6 @@
android:layout_height="match_parent"
android:gravity="bottom">
<View
android:layout_width="1dp"
android:layout_height="42dp"
android:background="@color/gray_dcdcdc" />
</LinearLayout>
<LinearLayout
@ -343,10 +342,7 @@
android:layout_height="match_parent"
android:gravity="bottom">
<View
android:layout_width="1dp"
android:layout_height="42dp"
android:background="@color/gray_dcdcdc" />
</LinearLayout>
<LinearLayout
@ -503,6 +499,7 @@
android:background="@drawable/bg_me_data"
android:clickable="true"
android:focusable="true"
android:visibility="gone"
android:focusableInTouchMode="true"
android:gravity="center"
android:orientation="horizontal">

View File

@ -0,0 +1,42 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="12dp"
android:gravity="left|center"
android:layout_marginBottom="12dp"
android:layout_marginLeft="12dp"
android:orientation="horizontal">
<ImageView
android:id="@+id/thumb"
android:layout_width="19dp"
android:layout_height="22dp"/>
<TextView
android:id="@+id/name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="sdsdsdsd"
android:gravity="center"
android:layout_marginLeft="5dp"
android:textColor="#333333"
android:textSize="14sp" />
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<ImageView
android:layout_width="12dp"
android:layout_height="14dp"
android:layout_gravity="left"
android:layout_alignParentRight="true"
android:layout_marginRight="17dp"
android:layout_marginTop="2dp"
android:src="@mipmap/tobtn"/>
</RelativeLayout>
</LinearLayout>

View File

@ -1,7 +1,5 @@
#Thu Sep 28 15:02:07 CST 2023
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-6.1.1-all.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-6.1.1-all.zip