diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index cba2a8a..20b817d 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -477,6 +477,12 @@
+
+
{
+public class MainLookMeAdapter extends BaseQuickAdapter {
private Context mContext;
+ private int mType;
- public MainLookMeAdapter(int layoutResId, Context context) {
+ public MainLookMeAdapter(int layoutResId, Context context, int type) {
super(layoutResId);
this.mContext = context;
+ this.mType = type;
}
@Override
- protected void convert(@NotNull BaseViewHolder baseViewHolder, LookMeBean lookMeBean) {
- SimpleDraweeView list_photo = baseViewHolder.getView(R.id.list_photo);
+ protected void convert(@NotNull BaseViewHolder baseViewHolder, SocialBean bean) {
- list_photo.setImageURI(StrU.getResourcePath(lookMeBean.getAvatar_url(), mContext));
+ SimpleDraweeView photo = baseViewHolder.getView(R.id.list_photo);
+ TextView name = baseViewHolder.getView(R.id.social_list_name);
+ View redPoint = baseViewHolder.getView(R.id.social_red_point);
+ ImageView ivMemberSign = baseViewHolder.getView(R.id.iv_member_sign);
+ TextView tv_sign = baseViewHolder.getView(R.id.tv_sign);
+ RelativeLayout rl_online_bg = baseViewHolder.getView(R.id.rl_online_bg);
+ TextView tv_online = baseViewHolder.getView(R.id.tv_online);
+ LinearLayout ll_visit_time = baseViewHolder.getView(R.id.ll_visit_time);
+ TextView tv_add_time = baseViewHolder.getView(R.id.tv_add_time);
+ TextView tv_visit_number = baseViewHolder.getView(R.id.tv_visit_number);
+ TextView tv_chat = baseViewHolder.getView(R.id.tv_chat);
+ RelativeLayout rl_item = baseViewHolder.getView(R.id.rl_item);
+
+ if (mType == 0) {
+ ll_visit_time.setVisibility(View.VISIBLE);
+ tv_chat.setVisibility(View.GONE);
+
+ tv_add_time.setText(bean.getAdd_time() + "访问");
+ tv_visit_number.setText(bean.getVisit_times() + "次");
+ }else if (mType == 1) {
+ ll_visit_time.setVisibility(View.GONE);
+ tv_chat.setVisibility(View.VISIBLE);
+
+ tv_chat.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View view) {
+ NimUIKit.startP2PSession(mContext, bean.getUserid() + "");
+ }
+ });
+ }
+
+
+ photo.setImageURI(StrU.getResourcePath(bean.getAvatar(), mContext));
+ name.setText(bean.getNickname());
+
+// if (1 == bean.getIs_watch()) {
+// redPoint.setVisibility(View.GONE);
+// } else {
+// redPoint.setVisibility(View.VISIBLE);
+// }
+
+ if (0 == bean.getVip()) {
+ ivMemberSign.setVisibility(View.VISIBLE);
+ ivMemberSign.setImageResource(R.drawable.ic_pvip);
+ } else if (1 == bean.getVip()) {
+ ivMemberSign.setVisibility(View.VISIBLE);
+ ivMemberSign.setImageResource(R.drawable.ic_gvip);
+ } else {
+ ivMemberSign.setVisibility(View.GONE);
+ }
+
+ if (TextUtils.isEmpty(bean.getSignature())) {
+ tv_sign.setVisibility(View.INVISIBLE);
+ }else {
+ tv_sign.setVisibility(View.VISIBLE);
+ tv_sign.setText(bean.getSignature());
+ }
+
+ if (bean.getOnline_status() == 0) {
+ rl_online_bg.setBackgroundResource(R.drawable.look_me_not_online_bg);
+ tv_online.setText("离线");
+ }else if (bean.getOnline_status() == 1) {
+ rl_online_bg.setBackgroundResource(R.drawable.look_me_online_bg);
+ tv_online.setText("在线");
+ }else if (bean.getOnline_status() == 2) {
+ rl_online_bg.setBackgroundResource(R.drawable.look_me_activi_bg);
+ tv_online.setText("活跃");
+ }
+
+ rl_item.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View view) {
+ Intent intent = new Intent(mContext, MainPageActivity.class);
+ intent.putExtra("userId", bean.getUserid());
+ mContext.startActivity(intent); }
+ });
}
}
diff --git a/app/src/main/java/com/xuebiping/bolizhuzi/controller/settings/adapter/ContactListAdapter.java b/app/src/main/java/com/xuebiping/bolizhuzi/controller/settings/adapter/ContactListAdapter.java
new file mode 100644
index 0000000..e6731cc
--- /dev/null
+++ b/app/src/main/java/com/xuebiping/bolizhuzi/controller/settings/adapter/ContactListAdapter.java
@@ -0,0 +1,137 @@
+package com.xuebiping.bolizhuzi.controller.settings.adapter;
+
+import android.content.Context;
+import android.content.Intent;
+import android.graphics.Color;
+import android.text.TextUtils;
+import android.view.View;
+import android.widget.ImageView;
+import android.widget.RelativeLayout;
+import android.widget.TextView;
+
+import com.chad.library.adapter.base.BaseQuickAdapter;
+import com.chad.library.adapter.base.viewholder.BaseViewHolder;
+import com.facebook.drawee.view.SimpleDraweeView;
+import com.xuebiping.bolizhuzi.R;
+import com.xuebiping.bolizhuzi.model.settings.SocialBean;
+import com.xuebiping.bolizhuzi.utils.StrU;
+import com.xuebiping.bolizhuzi.view.main.MainPageActivity;
+
+import org.jetbrains.annotations.NotNull;
+
+public class ContactListAdapter extends BaseQuickAdapter {
+
+ private Context mContext;
+ private int mType;
+
+ public ContactListAdapter(int layoutResId, Context context, int type) {
+ super(layoutResId);
+ this.mContext = context;
+ this.mType = type;
+ }
+
+ @Override
+ protected void convert(@NotNull BaseViewHolder baseViewHolder, SocialBean bean) {
+
+ SimpleDraweeView photo = baseViewHolder.getView(R.id.list_photo);
+ TextView name = baseViewHolder.getView(R.id.social_list_name);
+ TextView focus = baseViewHolder.getView(R.id.tv_focus);
+ View redPoint = baseViewHolder.getView(R.id.social_red_point);
+ ImageView ivMemberSign = baseViewHolder.getView(R.id.iv_member_sign);
+ TextView tv_sign = baseViewHolder.getView(R.id.tv_sign);
+ RelativeLayout rl_online_bg = baseViewHolder.getView(R.id.rl_online_bg);
+ TextView tv_online = baseViewHolder.getView(R.id.tv_online);
+ RelativeLayout rl_item = baseViewHolder.getView(R.id.rl_item);
+
+
+ photo.setImageURI(StrU.getResourcePath(bean.getAvatar(), mContext));
+ name.setText(bean.getNickname());
+
+// if (mType == 0 || mType == 1) {
+// focus.setText("已关注");
+// focus.setTextColor(Color.parseColor("#dddddd"));
+// focus.setBackgroundResource(R.drawable.shape_dddddd_line_oval_bg);
+// }else if (mType == 2) {
+// if (bean.getIs_follow() == 1) {
+// focus.setText("已关注");
+// focus.setTextColor(Color.parseColor("#dddddd"));
+// focus.setBackgroundResource(R.drawable.shape_dddddd_line_oval_bg);
+// }else {
+// focus.setText("关注");
+// focus.setTextColor(mContext.getResources().getColor(R.color.yellow_ffd33e));
+// focus.setBackgroundResource(R.drawable.shape_main_color_line_oval_bg);
+// }
+// }
+
+ if (bean.getIs_follow() == 1) {
+ focus.setText("已关注");
+ focus.setTextColor(Color.parseColor("#dddddd"));
+ focus.setBackgroundResource(R.drawable.shape_dddddd_line_oval_bg);
+ }else {
+ focus.setText("关注");
+ focus.setTextColor(mContext.getResources().getColor(R.color.yellow_ffd33e));
+ focus.setBackgroundResource(R.drawable.shape_main_color_line_oval_bg);
+ }
+
+// if (1 == bean.getIs_watch()) {
+// redPoint.setVisibility(View.GONE);
+// } else {
+// redPoint.setVisibility(View.VISIBLE);
+// }
+
+ if (0 == bean.getVip()) {
+ ivMemberSign.setVisibility(View.VISIBLE);
+ ivMemberSign.setImageResource(R.drawable.ic_pvip);
+ } else if (1 == bean.getVip()) {
+ ivMemberSign.setVisibility(View.VISIBLE);
+ ivMemberSign.setImageResource(R.drawable.ic_gvip);
+ } else {
+ ivMemberSign.setVisibility(View.GONE);
+ }
+
+ if (TextUtils.isEmpty(bean.getSignature())) {
+ tv_sign.setVisibility(View.INVISIBLE);
+ }else {
+ tv_sign.setVisibility(View.VISIBLE);
+ tv_sign.setText(bean.getSignature());
+ }
+
+ if (bean.getOnline_status() == 0) {
+ rl_online_bg.setBackgroundResource(R.drawable.look_me_not_online_bg);
+ tv_online.setText("离线");
+ }else if (bean.getOnline_status() == 1) {
+ rl_online_bg.setBackgroundResource(R.drawable.look_me_online_bg);
+ tv_online.setText("在线");
+ }else if (bean.getOnline_status() == 2) {
+ rl_online_bg.setBackgroundResource(R.drawable.look_me_activi_bg);
+ tv_online.setText("活跃");
+ }
+
+ focus.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View view) {
+ if (null != mOnFocusClickListener) {
+ mOnFocusClickListener.onFocusClick(baseViewHolder.getLayoutPosition(), bean.getUserid(), bean.getIs_follow());
+ }
+ }
+ });
+
+ rl_item.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View view) {
+ Intent intent = new Intent(mContext, MainPageActivity.class);
+ intent.putExtra("userId", bean.getUserid());
+ mContext.startActivity(intent); }
+ });
+ }
+
+ private OnFocusClickListener mOnFocusClickListener;
+
+ public void setOnFocusClickListener(OnFocusClickListener onFocusClickListener) {
+ mOnFocusClickListener = onFocusClickListener;
+ }
+
+ public interface OnFocusClickListener {
+ void onFocusClick(int position, int user_id, int is_follow);
+ }
+}
diff --git a/app/src/main/java/com/xuebiping/bolizhuzi/controller/settings/manager/SettingManager.java b/app/src/main/java/com/xuebiping/bolizhuzi/controller/settings/manager/SettingManager.java
index df331eb..ec3f0ee 100644
--- a/app/src/main/java/com/xuebiping/bolizhuzi/controller/settings/manager/SettingManager.java
+++ b/app/src/main/java/com/xuebiping/bolizhuzi/controller/settings/manager/SettingManager.java
@@ -511,6 +511,66 @@ public class SettingManager {
task.start();
}
+ public static void getLookData(BaseActivity activity,
+ final int type,
+ final int page,
+ HttpUiCallBack httpUiCallBack) {
+ HttpWithUiTask task = new HttpWithUiTask(activity, httpUiCallBack) {
+ @Override
+ protected HttpResult run() throws Exception {
+ String url = null;
+ if (type == 0) {
+ url = ConstUrl.VISITOR_LIST_NEW;
+ } else if (1 == type) {
+ url = ConstUrl.TRACER_LIST;
+ }
+
+ HttpRequest.Builder builder = new HttpRequest.Builder()
+ .setResultType(new TType>() {
+
+ }).setHttpMethod(HttpMethod.POST)
+ .addParam("page", page + "")
+ .setUrl(url);
+
+ HttpRequest request = builder.build();
+ return request.request();
+ }
+ };
+
+ task.start();
+ }
+
+ public static void getContactList(BaseActivity activity,
+ final int type,
+ final int page,
+ HttpUiCallBack httpUiCallBack) {
+ HttpWithUiTask task = new HttpWithUiTask(activity, httpUiCallBack) {
+ @Override
+ protected HttpResult run() throws Exception {
+ String url = null;
+ if (type == 0) {
+ url = ConstUrl.FRIEND_LIST;
+ } else if (1 == type) {
+ url = ConstUrl.FOCUS_LIST;
+ } else if (2 == type) {
+ url = ConstUrl.FANS_LIST;
+ }
+
+ HttpRequest.Builder builder = new HttpRequest.Builder()
+ .setResultType(new TType>() {
+
+ }).setHttpMethod(HttpMethod.POST)
+ .addParam("page", page + "")
+ .setUrl(url);
+
+ HttpRequest request = builder.build();
+ return request.request();
+ }
+ };
+
+ task.start(false);
+ }
+
public static void getInviteList(BaseActivity activity, final int page, String user, HttpUiCallBack<
SocialListBean> httpUiCallBack) {
HttpWithUiTask task = new HttpWithUiTask(activity, httpUiCallBack) {
diff --git a/app/src/main/java/com/xuebiping/bolizhuzi/im/uikit/common/ui/drop/DropFake.java b/app/src/main/java/com/xuebiping/bolizhuzi/im/uikit/common/ui/drop/DropFake.java
index 5d4b288..627307c 100644
--- a/app/src/main/java/com/xuebiping/bolizhuzi/im/uikit/common/ui/drop/DropFake.java
+++ b/app/src/main/java/com/xuebiping/bolizhuzi/im/uikit/common/ui/drop/DropFake.java
@@ -65,7 +65,8 @@ public class DropFake extends View {
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
// circle
- int[] mColors = {0xFFE69EFF, 0xFF925BF7};
+// int[] mColors = {0xFFE69EFF, 0xFF925BF7};
+ int[] mColors = {0xFFF94F2E, 0xFFF94F2E};
Paint circlePaint = DropManager.getInstance().getCirclePaint();
circlePaint.setShader(new LinearGradient(0, 0, circleX + radius, circleY + radius, mColors, null, Shader.TileMode.CLAMP));
canvas.drawCircle(circleX, circleY, radius, circlePaint);
diff --git a/app/src/main/java/com/xuebiping/bolizhuzi/model/settings/SocialBean.java b/app/src/main/java/com/xuebiping/bolizhuzi/model/settings/SocialBean.java
index e979e8f..aa0b0d4 100644
--- a/app/src/main/java/com/xuebiping/bolizhuzi/model/settings/SocialBean.java
+++ b/app/src/main/java/com/xuebiping/bolizhuzi/model/settings/SocialBean.java
@@ -14,6 +14,9 @@ public class SocialBean {
private String city;
private int is_watch = 1;
private int vip = 2;
+ private String signature;
+ private int online_status; //0 不在线 1在线 2活跃
+ private int visit_times;
public int getUserid() {
return userid;
@@ -119,6 +122,30 @@ public class SocialBean {
this.vip = vip;
}
+ public String getSignature() {
+ return signature;
+ }
+
+ public void setSignature(String signature) {
+ this.signature = signature;
+ }
+
+ public int getOnline_status() {
+ return online_status;
+ }
+
+ public void setOnline_status(int online_status) {
+ this.online_status = online_status;
+ }
+
+ public int getVisit_times() {
+ return visit_times;
+ }
+
+ public void setVisit_times(int visit_times) {
+ this.visit_times = visit_times;
+ }
+
@Override
public String toString() {
return "SocialBean{" +
diff --git a/app/src/main/java/com/xuebiping/bolizhuzi/model/settings/SocialListBean.java b/app/src/main/java/com/xuebiping/bolizhuzi/model/settings/SocialListBean.java
index 2a55db9..3d04a7c 100644
--- a/app/src/main/java/com/xuebiping/bolizhuzi/model/settings/SocialListBean.java
+++ b/app/src/main/java/com/xuebiping/bolizhuzi/model/settings/SocialListBean.java
@@ -5,6 +5,7 @@ import java.util.List;
public class SocialListBean {
private List list = new ArrayList<>();
+ private int total_page;
private int total;
public List getList() {
@@ -22,4 +23,12 @@ public class SocialListBean {
public void setTotal(int total) {
this.total = total;
}
+
+ public int getTotal_page() {
+ return total_page;
+ }
+
+ public void setTotal_page(int total_page) {
+ this.total_page = total_page;
+ }
}
diff --git a/app/src/main/java/com/xuebiping/bolizhuzi/view/main/LookMeFragment.java b/app/src/main/java/com/xuebiping/bolizhuzi/view/main/LookMeFragment.java
index 8532622..bc41ac4 100644
--- a/app/src/main/java/com/xuebiping/bolizhuzi/view/main/LookMeFragment.java
+++ b/app/src/main/java/com/xuebiping/bolizhuzi/view/main/LookMeFragment.java
@@ -4,6 +4,7 @@ import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
+import android.widget.LinearLayout;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
@@ -11,12 +12,18 @@ import androidx.fragment.app.Fragment;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
+import com.fengliyan.uikit.toast.MaleToast;
import com.scwang.smartrefresh.layout.SmartRefreshLayout;
import com.scwang.smartrefresh.layout.api.RefreshLayout;
import com.scwang.smartrefresh.layout.listener.OnRefreshLoadMoreListener;
import com.xuebiping.bolizhuzi.R;
import com.xuebiping.bolizhuzi.controller.main.adapter.MainLookMeAdapter;
+import com.xuebiping.bolizhuzi.controller.settings.manager.SettingManager;
import com.xuebiping.bolizhuzi.model.main.LookMeBean;
+import com.xuebiping.bolizhuzi.model.settings.SocialBean;
+import com.xuebiping.bolizhuzi.model.settings.SocialListBean;
+import com.xuebiping.bolizhuzi.view.base.BaseActivity;
+import com.xuebiping.bolizhuzi.view.base.utils.HttpUiCallBack;
import org.jetbrains.annotations.NotNull;
@@ -25,14 +32,19 @@ import java.util.List;
public class LookMeFragment extends Fragment implements OnRefreshLoadMoreListener {
+ private int mType = 0; //0看过我的 1我的足迹
+
private View v;
private SmartRefreshLayout mSmart_refresh;
private RecyclerView mRv_recommend_list;
+ private LinearLayout mRl_no_data;
+
private MainLookMeAdapter mMainLookMeAdapter;
private int mPage = 1;
- private List mData = new ArrayList<>();
+ private int mTotalPage;
+ private List mData = new ArrayList<>();
@Nullable
@org.jetbrains.annotations.Nullable
@@ -40,34 +52,63 @@ public class LookMeFragment extends Fragment implements OnRefreshLoadMoreListene
public View onCreateView(@NonNull @NotNull LayoutInflater inflater, @Nullable @org.jetbrains.annotations.Nullable ViewGroup container, @Nullable @org.jetbrains.annotations.Nullable Bundle savedInstanceState) {
v = inflater.inflate(R.layout.fragment_look_me, container, false);
initView(v);
- getData(mPage);
+ getLookData(mPage);
return v;
}
private void initView(View v) {
mSmart_refresh = v.findViewById(R.id.smart_refresh);
mRv_recommend_list = v.findViewById(R.id.rv_recommend_list);
+ mRl_no_data = v.findViewById(R.id.rl_no_data);
+
mRv_recommend_list.setLayoutManager(new LinearLayoutManager(getActivity()));
- mMainLookMeAdapter = new MainLookMeAdapter(R.layout.item_main_look_me, getActivity());
+ mMainLookMeAdapter = new MainLookMeAdapter(R.layout.item_main_look_me, getActivity(), mType);
mRv_recommend_list.setAdapter(mMainLookMeAdapter);
mSmart_refresh.setOnRefreshLoadMoreListener(this);
}
- private void getData(int page) {
+ private void getLookData(int page){
+ SettingManager.getLookData((BaseActivity) getActivity(), mType, page, new HttpUiCallBack() {
+ @Override
+ public void onSuccess(BaseActivity activity, SocialListBean result, String message) {
+ finishFresh();
+ if (result != null) {
+ mTotalPage = result.getTotal_page();
+ if (mPage == 1) {
+ mData.clear();
+ }
+ List list = result.getList();
+ if (list != null && list.size() > 0) {
+ mData.addAll(list);
+ }
+ }
+ if (mData != null && mData.size() > 0) {
+ if (mPage == 1) {
+ mRl_no_data.setVisibility(View.GONE);
+ mRv_recommend_list.setVisibility(View.VISIBLE);
+ }
+ mMainLookMeAdapter.setList(mData);
+ } else {
+ if (mPage == 1) {
+ mRl_no_data.setVisibility(View.VISIBLE);
+ mRv_recommend_list.setVisibility(View.GONE);
+ }
+ }
+ }
- for (int i = 0; i < 10; i++) {
-
- LookMeBean lookMeBean = new LookMeBean();
- lookMeBean.setId(i + "");
- lookMeBean.setAvatar_url("uploads/admin/202403/25/04cf409ab9148f11c0052bb254b5c155.jpg");
- mData.add(lookMeBean);
-
- }
-
- finishFresh();
- mMainLookMeAdapter.setList(mData);
+ @Override
+ public void onFailure(BaseActivity activity, String tip) {
+ finishFresh();
+ MaleToast.showFailureMsg(activity, tip);
+ }
+ @Override
+ public void onException(BaseActivity activity, Throwable e) {
+ finishFresh();
+ MaleToast.showFailureMsg(activity, "请重试");
+ }
+ });
}
public void finishFresh() {
@@ -78,12 +119,17 @@ public class LookMeFragment extends Fragment implements OnRefreshLoadMoreListene
@Override
public void onLoadMore(@NonNull @NotNull RefreshLayout refreshLayout) {
mPage++;
- getData(mPage);
+ if (mPage > mTotalPage) {
+ mSmart_refresh.finishLoadMore();
+ mSmart_refresh.setNoMoreData(true);
+ } else {
+ getLookData(mPage);
+ }
}
@Override
public void onRefresh(@NonNull @NotNull RefreshLayout refreshLayout) {
mPage = 1;
- getData(mPage);
+ getLookData(mPage);
}
}
diff --git a/app/src/main/java/com/xuebiping/bolizhuzi/view/main/RecommendFragment2.java b/app/src/main/java/com/xuebiping/bolizhuzi/view/main/RecommendFragment2.java
index aafc792..28a317d 100644
--- a/app/src/main/java/com/xuebiping/bolizhuzi/view/main/RecommendFragment2.java
+++ b/app/src/main/java/com/xuebiping/bolizhuzi/view/main/RecommendFragment2.java
@@ -1,7 +1,6 @@
package com.xuebiping.bolizhuzi.view.main;
import android.os.Bundle;
-import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
@@ -15,17 +14,13 @@ import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import androidx.viewpager.widget.ViewPager;
-import com.chad.library.adapter.base.viewholder.BaseViewHolder;
import com.scwang.smartrefresh.layout.SmartRefreshLayout;
import com.scwang.smartrefresh.layout.api.RefreshLayout;
import com.scwang.smartrefresh.layout.listener.OnRefreshLoadMoreListener;
import com.xuebiping.bolizhuzi.R;
-import com.xuebiping.bolizhuzi.controller.constant.ConstUrl;
-import com.xuebiping.bolizhuzi.controller.main.adapter.MainLookMeAdapter;
import com.xuebiping.bolizhuzi.controller.main.adapter.MainRecommendAdapter;
import com.xuebiping.bolizhuzi.model.main.BannerBean;
import com.xuebiping.bolizhuzi.model.main.LookMeBean;
-import com.xuebiping.bolizhuzi.model.main.MainRecommendListBean;
import com.xuebiping.bolizhuzi.utils.BaseUtils;
import com.xuebiping.bolizhuzi.utils.GlideImageLoader;
import com.xuebiping.bolizhuzi.utils.SPUtils;
diff --git a/app/src/main/java/com/xuebiping/bolizhuzi/view/settings/ContactListActivity.java b/app/src/main/java/com/xuebiping/bolizhuzi/view/settings/ContactListActivity.java
new file mode 100644
index 0000000..3ff70e0
--- /dev/null
+++ b/app/src/main/java/com/xuebiping/bolizhuzi/view/settings/ContactListActivity.java
@@ -0,0 +1,118 @@
+package com.xuebiping.bolizhuzi.view.settings;
+
+import android.content.Context;
+import android.graphics.Color;
+import android.graphics.Typeface;
+import android.os.Bundle;
+import android.util.Log;
+import android.view.View;
+
+import androidx.fragment.app.Fragment;
+import androidx.viewpager.widget.ViewPager;
+
+import com.xuebiping.bolizhuzi.R;
+import com.xuebiping.bolizhuzi.controller.main.adapter.MainViewPagerAdapter;
+import com.xuebiping.bolizhuzi.controller.main.adapter.ScaleTransitionPagerTitleView;
+import com.xuebiping.bolizhuzi.view.base.BaseActivity;
+import com.xuebiping.bolizhuzi.view.main.LookMeFragment;
+
+import net.lucode.hackware.magicindicator.MagicIndicator;
+import net.lucode.hackware.magicindicator.ViewPagerHelper;
+import net.lucode.hackware.magicindicator.buildins.UIUtil;
+import net.lucode.hackware.magicindicator.buildins.commonnavigator.CommonNavigator;
+import net.lucode.hackware.magicindicator.buildins.commonnavigator.abs.CommonNavigatorAdapter;
+import net.lucode.hackware.magicindicator.buildins.commonnavigator.abs.IPagerIndicator;
+import net.lucode.hackware.magicindicator.buildins.commonnavigator.abs.IPagerTitleView;
+import net.lucode.hackware.magicindicator.buildins.commonnavigator.indicators.LinePagerIndicator;
+import net.lucode.hackware.magicindicator.buildins.commonnavigator.titles.SimplePagerTitleView;
+
+import java.util.ArrayList;
+import java.util.List;
+
+public class ContactListActivity extends BaseActivity {
+
+ private MagicIndicator mMagicIndicator;
+ private ViewPager mMainViewPager;
+
+ private MainViewPagerAdapter mViewPagerAdapter;
+ private List mChannelFragments = new ArrayList<>();
+ private ContactListFragment mFriendFragment;
+ private ContactListFragment mFocusFragment;
+ private ContactListFragment mFansFragment;
+ private List mDataList = new ArrayList<>();
+ private int mIndex = 1;
+
+ @Override
+ public void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ setContentView(R.layout.activity_contact_list);
+ setTitleName("通讯录");
+ initView();
+ }
+
+ private void initView() {
+ mMagicIndicator = findViewById(R.id.magic_indicator);
+ mMainViewPager = findViewById(R.id.main_view_pager);
+
+ mFriendFragment = ContactListFragment.newInstance(0);
+ mFocusFragment = ContactListFragment.newInstance(1);
+ mFansFragment = ContactListFragment.newInstance(2);
+
+ mChannelFragments.add(mFriendFragment);
+ mChannelFragments.add(mFocusFragment);
+ mChannelFragments.add(mFansFragment);
+
+ mViewPagerAdapter = new MainViewPagerAdapter(getSupportFragmentManager(),
+ mChannelFragments);
+ mMainViewPager.setAdapter(mViewPagerAdapter);
+
+ initMagicIndicator();
+
+ mViewPagerAdapter.notifyDataSetChanged();
+ mMainViewPager.setCurrentItem(mIndex);
+ }
+
+ private void initMagicIndicator() {
+ mDataList.clear();
+ mDataList.add("好友");
+ mDataList.add("关注");
+ mDataList.add("粉丝");
+
+ CommonNavigator commonNavigator = new CommonNavigator(this);
+ commonNavigator.setAdapter(new CommonNavigatorAdapter() {
+ @Override
+ public int getCount() {
+ return mDataList == null ? 0 : mDataList.size();
+ }
+
+ @Override
+ public IPagerTitleView getTitleView(Context context, final int index) {
+ SimplePagerTitleView simplePagerTitleView = new ScaleTransitionPagerTitleView(context);
+ simplePagerTitleView.setText(mDataList.get(index));
+ simplePagerTitleView.setTextSize(20);
+ simplePagerTitleView.setTypeface(Typeface.defaultFromStyle(Typeface.BOLD));//加粗
+ simplePagerTitleView.setNormalColor(Color.parseColor("#33000000"));
+ simplePagerTitleView.setSelectedColor(Color.parseColor("#000000"));
+ simplePagerTitleView.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ mMainViewPager.setCurrentItem(index);
+
+ }
+ });
+ return simplePagerTitleView;
+ }
+
+ @Override
+ public IPagerIndicator getIndicator(Context context) {
+ LinePagerIndicator indicator = new LinePagerIndicator(context);
+ indicator.setColors(getResources().getColor(R.color.yellow_ffd33e));
+ indicator.setLineHeight(UIUtil.dip2px(context, 10));
+ indicator.setMode(LinePagerIndicator.MODE_WRAP_CONTENT);
+ return null;
+ }
+ });
+ mMagicIndicator.setNavigator(commonNavigator);
+ ViewPagerHelper.bind(mMagicIndicator, mMainViewPager);
+ }
+}
diff --git a/app/src/main/java/com/xuebiping/bolizhuzi/view/settings/ContactListFragment.java b/app/src/main/java/com/xuebiping/bolizhuzi/view/settings/ContactListFragment.java
new file mode 100644
index 0000000..c5cbeca
--- /dev/null
+++ b/app/src/main/java/com/xuebiping/bolizhuzi/view/settings/ContactListFragment.java
@@ -0,0 +1,185 @@
+package com.xuebiping.bolizhuzi.view.settings;
+
+import android.os.Bundle;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+import android.widget.LinearLayout;
+
+import androidx.annotation.NonNull;
+import androidx.fragment.app.Fragment;
+import androidx.recyclerview.widget.LinearLayoutManager;
+import androidx.recyclerview.widget.RecyclerView;
+
+import com.fengliyan.uikit.toast.MaleToast;
+import com.scwang.smartrefresh.layout.SmartRefreshLayout;
+import com.scwang.smartrefresh.layout.api.RefreshLayout;
+import com.scwang.smartrefresh.layout.listener.OnRefreshLoadMoreListener;
+import com.xuebiping.bolizhuzi.R;
+import com.xuebiping.bolizhuzi.controller.dynamics.manager.DynamicsManager;
+import com.xuebiping.bolizhuzi.controller.settings.adapter.ContactListAdapter;
+import com.xuebiping.bolizhuzi.controller.settings.manager.SettingManager;
+import com.xuebiping.bolizhuzi.model.main.FollowResultBean;
+import com.xuebiping.bolizhuzi.model.settings.SocialBean;
+import com.xuebiping.bolizhuzi.model.settings.SocialListBean;
+import com.xuebiping.bolizhuzi.view.base.BaseActivity;
+import com.xuebiping.bolizhuzi.view.base.utils.HttpUiCallBack;
+
+import org.jetbrains.annotations.NotNull;
+
+import java.util.ArrayList;
+import java.util.List;
+
+public class ContactListFragment extends Fragment implements OnRefreshLoadMoreListener {
+
+ private static final String ARG_PARAM1 = "param1";
+
+ private int mType; //0 好友 1 关注 2粉丝
+
+ private View v;
+
+ private SmartRefreshLayout mSmart_refresh;
+ private RecyclerView mRv_recommend_list;
+ private LinearLayout mRl_no_data;
+
+ private int mPage = 1;
+ private int mTotalPage;
+
+ private List mData = new ArrayList<>();
+ private ContactListAdapter mContactListAdapter;
+
+
+ public ContactListFragment() {
+ // Required empty public constructor
+ }
+
+ public static ContactListFragment newInstance(int param1) {
+ ContactListFragment fragment = new ContactListFragment();
+ Bundle args = new Bundle();
+ args.putInt(ARG_PARAM1, param1);
+ fragment.setArguments(args);
+ return fragment;
+ }
+
+ @Override
+ public void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ if (getArguments() != null) {
+ mType = getArguments().getInt(ARG_PARAM1);
+ }
+ }
+
+ @Override
+ public View onCreateView(LayoutInflater inflater, ViewGroup container,
+ Bundle savedInstanceState) {
+ // Inflate the layout for this fragment
+ View v = inflater.inflate(R.layout.fragment_contact_list, container, false);
+ initView(v);
+ getContactList(mPage);
+ return v;
+ }
+
+ private void initView(View v) {
+ mSmart_refresh = v.findViewById(R.id.smart_refresh);
+ mRv_recommend_list = v.findViewById(R.id.rv_recommend_list);
+ mRl_no_data = v.findViewById(R.id.rl_no_data);
+ mRv_recommend_list.setLayoutManager(new LinearLayoutManager(getActivity()));
+ mContactListAdapter = new ContactListAdapter(R.layout.item_contact_list, getActivity(), mType);
+ mRv_recommend_list.setAdapter(mContactListAdapter);
+
+ mSmart_refresh.setOnRefreshLoadMoreListener(this);
+
+ mContactListAdapter.setOnFocusClickListener(new ContactListAdapter.OnFocusClickListener() {
+ @Override
+ public void onFocusClick(int position, int user_id, int is_follow) {
+ follow(user_id + "", position);
+ }
+ });
+ }
+
+ private void follow(String uid, final int position){
+ DynamicsManager.follow((BaseActivity) getActivity(), uid, new HttpUiCallBack() {
+ @Override
+ public void onSuccess(BaseActivity activity, FollowResultBean result, String message) {
+ mData.get(position).setIs_follow(mData.get(position)
+ .getIs_follow() == 1? 0 :1);
+ mContactListAdapter.notifyItemChanged(position);
+ }
+
+ @Override
+ public void onFailure(BaseActivity activity, String tip) {
+ MaleToast.showMessage(activity, tip);
+ }
+
+ @Override
+ public void onException(BaseActivity activity, Throwable e) {
+ MaleToast.showMessage(activity, "关注失败");
+ }
+ });
+ }
+
+ private void getContactList(int page){
+ SettingManager.getContactList((BaseActivity) getActivity(), mType, page, new HttpUiCallBack() {
+ @Override
+ public void onSuccess(BaseActivity activity, SocialListBean result, String message) {
+ finishFresh();
+ if (result != null) {
+ mTotalPage = result.getTotal_page();
+ if (mPage == 1) {
+ mData.clear();
+ }
+ List list = result.getList();
+ if (list != null && list.size() > 0) {
+ mData.addAll(list);
+ }
+ }
+ if (mData != null && mData.size() > 0) {
+ if (mPage == 1) {
+ mRl_no_data.setVisibility(View.GONE);
+ mRv_recommend_list.setVisibility(View.VISIBLE);
+ }
+ mContactListAdapter.setList(mData);
+ } else {
+ if (mPage == 1) {
+ mRl_no_data.setVisibility(View.VISIBLE);
+ mRv_recommend_list.setVisibility(View.GONE);
+ }
+ }
+ }
+
+ @Override
+ public void onFailure(BaseActivity activity, String tip) {
+ finishFresh();
+ MaleToast.showFailureMsg(activity, tip);
+ }
+
+ @Override
+ public void onException(BaseActivity activity, Throwable e) {
+ finishFresh();
+ MaleToast.showFailureMsg(activity, "请重试");
+ }
+ });
+ }
+
+ public void finishFresh() {
+ mSmart_refresh.finishLoadMore();
+ mSmart_refresh.finishRefresh();
+ }
+
+ @Override
+ public void onLoadMore(@NonNull @NotNull RefreshLayout refreshLayout) {
+ mPage++;
+ if (mPage > mTotalPage) {
+ mSmart_refresh.finishLoadMore();
+ mSmart_refresh.setNoMoreData(true);
+ } else {
+ getContactList(mPage);
+ }
+ }
+
+ @Override
+ public void onRefresh(@NonNull @NotNull RefreshLayout refreshLayout) {
+ mPage = 1;
+ getContactList(mPage);
+ }
+}
diff --git a/app/src/main/java/com/xuebiping/bolizhuzi/view/settings/MeLookFragment.java b/app/src/main/java/com/xuebiping/bolizhuzi/view/settings/MeLookFragment.java
new file mode 100644
index 0000000..1c6fd6e
--- /dev/null
+++ b/app/src/main/java/com/xuebiping/bolizhuzi/view/settings/MeLookFragment.java
@@ -0,0 +1,134 @@
+package com.xuebiping.bolizhuzi.view.settings;
+
+import android.os.Bundle;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+import android.widget.LinearLayout;
+
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+import androidx.fragment.app.Fragment;
+import androidx.recyclerview.widget.LinearLayoutManager;
+import androidx.recyclerview.widget.RecyclerView;
+
+import com.fengliyan.uikit.toast.MaleToast;
+import com.scwang.smartrefresh.layout.SmartRefreshLayout;
+import com.scwang.smartrefresh.layout.api.RefreshLayout;
+import com.scwang.smartrefresh.layout.listener.OnRefreshLoadMoreListener;
+import com.xuebiping.bolizhuzi.R;
+import com.xuebiping.bolizhuzi.controller.main.adapter.MainLookMeAdapter;
+import com.xuebiping.bolizhuzi.controller.settings.manager.SettingManager;
+import com.xuebiping.bolizhuzi.model.settings.SocialBean;
+import com.xuebiping.bolizhuzi.model.settings.SocialListBean;
+import com.xuebiping.bolizhuzi.view.base.BaseActivity;
+import com.xuebiping.bolizhuzi.view.base.utils.HttpUiCallBack;
+
+import org.jetbrains.annotations.NotNull;
+
+import java.util.ArrayList;
+import java.util.List;
+
+public class MeLookFragment extends Fragment implements OnRefreshLoadMoreListener {
+
+ private int mType = 1; //0看过我的 1我的足迹
+
+ private View v;
+
+ private SmartRefreshLayout mSmart_refresh;
+ private RecyclerView mRv_recommend_list;
+ private LinearLayout mRl_no_data;
+
+ private MainLookMeAdapter mMainLookMeAdapter;
+
+ private int mPage = 1;
+ private int mTotalPage;
+ private List mData = new ArrayList<>();
+
+ @Nullable
+ @org.jetbrains.annotations.Nullable
+ @Override
+ public View onCreateView(@NonNull @NotNull LayoutInflater inflater, @Nullable @org.jetbrains.annotations.Nullable ViewGroup container, @Nullable @org.jetbrains.annotations.Nullable Bundle savedInstanceState) {
+ v = inflater.inflate(R.layout.fragment_look_me, container, false);
+ initView(v);
+ getLookData(mPage);
+ return v;
+ }
+
+ private void initView(View v) {
+ mSmart_refresh = v.findViewById(R.id.smart_refresh);
+ mRv_recommend_list = v.findViewById(R.id.rv_recommend_list);
+ mRl_no_data = v.findViewById(R.id.rl_no_data);
+
+ mRv_recommend_list.setLayoutManager(new LinearLayoutManager(getActivity()));
+ mMainLookMeAdapter = new MainLookMeAdapter(R.layout.item_main_look_me, getActivity(), mType);
+ mRv_recommend_list.setAdapter(mMainLookMeAdapter);
+
+ mSmart_refresh.setOnRefreshLoadMoreListener(this);
+ }
+
+ private void getLookData(int page){
+ SettingManager.getLookData((BaseActivity) getActivity(), mType, page, new HttpUiCallBack() {
+ @Override
+ public void onSuccess(BaseActivity activity, SocialListBean result, String message) {
+ finishFresh();
+ if (result != null) {
+ mTotalPage = result.getTotal_page();
+ if (mPage == 1) {
+ mData.clear();
+ }
+ List list = result.getList();
+ if (list != null && list.size() > 0) {
+ mData.addAll(list);
+ }
+ }
+ if (mData != null && mData.size() > 0) {
+ if (mPage == 1) {
+ mRl_no_data.setVisibility(View.GONE);
+ mRv_recommend_list.setVisibility(View.VISIBLE);
+ }
+ mMainLookMeAdapter.setList(mData);
+ } else {
+ if (mPage == 1) {
+ mRl_no_data.setVisibility(View.VISIBLE);
+ mRv_recommend_list.setVisibility(View.GONE);
+ }
+ }
+ }
+
+ @Override
+ public void onFailure(BaseActivity activity, String tip) {
+ finishFresh();
+ MaleToast.showFailureMsg(activity, tip);
+ }
+
+ @Override
+ public void onException(BaseActivity activity, Throwable e) {
+ finishFresh();
+ MaleToast.showFailureMsg(activity, "请重试");
+ }
+ });
+ }
+
+ public void finishFresh() {
+ mSmart_refresh.finishLoadMore();
+ mSmart_refresh.finishRefresh();
+ }
+
+ @Override
+ public void onLoadMore(@NonNull @NotNull RefreshLayout refreshLayout) {
+ mPage++;
+ if (mPage > mTotalPage) {
+ mSmart_refresh.finishLoadMore();
+ mSmart_refresh.setNoMoreData(true);
+ } else {
+ getLookData(mPage);
+ }
+ }
+
+ @Override
+ public void onRefresh(@NonNull @NotNull RefreshLayout refreshLayout) {
+ mPage = 1;
+ getLookData(mPage);
+ }
+}
diff --git a/app/src/main/java/com/xuebiping/bolizhuzi/view/settings/SettingFragment2.java b/app/src/main/java/com/xuebiping/bolizhuzi/view/settings/SettingFragment2.java
index 6c9a33b..3028f01 100644
--- a/app/src/main/java/com/xuebiping/bolizhuzi/view/settings/SettingFragment2.java
+++ b/app/src/main/java/com/xuebiping/bolizhuzi/view/settings/SettingFragment2.java
@@ -497,9 +497,11 @@ public class SettingFragment2 extends Fragment implements View.OnClickListener {
startActivity(intent);
break;
case R.id.ll_foucs://关注
- intent = new Intent(getActivity(), SocialActivity.class);
- intent.putExtra("socialType", 0);
- getActivity().startActivityForResult(intent, SETTING_SOCIAL_REQUEST);
+// intent = new Intent(getActivity(), SocialActivity.class);
+// intent.putExtra("socialType", 0);
+// getActivity().startActivityForResult(intent, SETTING_SOCIAL_REQUEST);
+ intent = new Intent(getActivity(), ContactListActivity.class);
+ startActivity(intent);
break;
case R.id.ll_fans://粉丝
intent = new Intent(getActivity(), SocialActivity.class);
@@ -507,8 +509,10 @@ public class SettingFragment2 extends Fragment implements View.OnClickListener {
getActivity().startActivityForResult(intent, SETTING_SOCIAL_REQUEST);
break;
case R.id.ll_scan://来访
- intent = new Intent(getActivity(), SocialActivity.class);
- intent.putExtra("socialType", 2);
+// intent = new Intent(getActivity(), SocialActivity.class);
+// intent.putExtra("socialType", 2);
+// startActivity(intent);
+ intent = new Intent(getActivity(), VisitorActivity.class);
startActivity(intent);
break;
case R.id.ll_foot://足迹
@@ -523,6 +527,7 @@ public class SettingFragment2 extends Fragment implements View.OnClickListener {
case R.id.cl_income:
intent = new Intent(getActivity(), WalletActivity.class);
startActivity(intent);
+ break;
case R.id.ll_income:
intent = new Intent(getActivity(), CaibeiRechargeActivity.class);
startActivity(intent);
diff --git a/app/src/main/java/com/xuebiping/bolizhuzi/view/settings/VisitorActivity.java b/app/src/main/java/com/xuebiping/bolizhuzi/view/settings/VisitorActivity.java
new file mode 100644
index 0000000..9121843
--- /dev/null
+++ b/app/src/main/java/com/xuebiping/bolizhuzi/view/settings/VisitorActivity.java
@@ -0,0 +1,115 @@
+package com.xuebiping.bolizhuzi.view.settings;
+
+import android.content.Context;
+import android.graphics.Color;
+import android.graphics.Typeface;
+import android.os.Bundle;
+import android.view.View;
+import android.widget.TextView;
+
+import androidx.fragment.app.Fragment;
+import androidx.viewpager.widget.ViewPager;
+
+import com.xuebiping.bolizhuzi.R;
+import com.xuebiping.bolizhuzi.controller.main.adapter.MainViewPagerAdapter;
+import com.xuebiping.bolizhuzi.controller.main.adapter.ScaleTransitionPagerTitleView;
+import com.xuebiping.bolizhuzi.view.base.BaseActivity;
+import com.xuebiping.bolizhuzi.view.main.LookMeFragment;
+
+import net.lucode.hackware.magicindicator.MagicIndicator;
+import net.lucode.hackware.magicindicator.ViewPagerHelper;
+import net.lucode.hackware.magicindicator.buildins.UIUtil;
+import net.lucode.hackware.magicindicator.buildins.commonnavigator.CommonNavigator;
+import net.lucode.hackware.magicindicator.buildins.commonnavigator.abs.CommonNavigatorAdapter;
+import net.lucode.hackware.magicindicator.buildins.commonnavigator.abs.IPagerIndicator;
+import net.lucode.hackware.magicindicator.buildins.commonnavigator.abs.IPagerTitleView;
+import net.lucode.hackware.magicindicator.buildins.commonnavigator.indicators.LinePagerIndicator;
+import net.lucode.hackware.magicindicator.buildins.commonnavigator.titles.SimplePagerTitleView;
+
+import java.util.ArrayList;
+import java.util.List;
+
+public class VisitorActivity extends BaseActivity {
+
+ private MagicIndicator mMagicIndicator;
+ private ViewPager mMainViewPager;
+
+ private MainViewPagerAdapter mViewPagerAdapter;
+ private List mChannelFragments = new ArrayList<>();
+ private LookMeFragment mLookMeFragment;
+ private MeLookFragment mMeLookFragment;
+ private List mDataList = new ArrayList<>();
+ private int mIndex = 0;
+
+ @Override
+ public void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ setContentView(R.layout.activity_visittor);
+ setTitleName("访客");
+ initView();
+ }
+
+ private void initView() {
+ mMagicIndicator = findViewById(R.id.magic_indicator);
+ mMainViewPager = findViewById(R.id.main_view_pager);
+
+ mLookMeFragment = new LookMeFragment();
+ mMeLookFragment = new MeLookFragment();
+
+ mChannelFragments.add(mLookMeFragment);
+ mChannelFragments.add(mMeLookFragment);
+
+
+ mViewPagerAdapter = new MainViewPagerAdapter(getSupportFragmentManager(),
+ mChannelFragments);
+ mMainViewPager.setAdapter(mViewPagerAdapter);
+
+ initMagicIndicator();
+
+ mViewPagerAdapter.notifyDataSetChanged();
+ mMainViewPager.setCurrentItem(mIndex);
+ }
+
+ private void initMagicIndicator() {
+ mDataList.clear();
+ mDataList.add("看过我的");
+ mDataList.add("我的足迹");
+
+ CommonNavigator commonNavigator = new CommonNavigator(this);
+ commonNavigator.setAdapter(new CommonNavigatorAdapter() {
+ @Override
+ public int getCount() {
+ return mDataList == null ? 0 : mDataList.size();
+ }
+
+ @Override
+ public IPagerTitleView getTitleView(Context context, final int index) {
+ SimplePagerTitleView simplePagerTitleView = new ScaleTransitionPagerTitleView(context);
+ simplePagerTitleView.setText(mDataList.get(index));
+ simplePagerTitleView.setTextSize(20);
+ simplePagerTitleView.setTypeface(Typeface.defaultFromStyle(Typeface.BOLD));//加粗
+ simplePagerTitleView.setNormalColor(Color.parseColor("#33000000"));
+ simplePagerTitleView.setSelectedColor(Color.parseColor("#000000"));
+ simplePagerTitleView.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ mMainViewPager.setCurrentItem(index);
+
+ }
+ });
+ return simplePagerTitleView;
+ }
+
+ @Override
+ public IPagerIndicator getIndicator(Context context) {
+ LinePagerIndicator indicator = new LinePagerIndicator(context);
+ indicator.setColors(getResources().getColor(R.color.yellow_ffd33e));
+ indicator.setLineHeight(UIUtil.dip2px(context, 10));
+ indicator.setMode(LinePagerIndicator.MODE_WRAP_CONTENT);
+ return null;
+ }
+ });
+ mMagicIndicator.setNavigator(commonNavigator);
+ ViewPagerHelper.bind(mMagicIndicator, mMainViewPager);
+ }
+}
diff --git a/app/src/main/res/drawable/look_me_activi_bg.xml b/app/src/main/res/drawable/look_me_activi_bg.xml
new file mode 100644
index 0000000..9666cb2
--- /dev/null
+++ b/app/src/main/res/drawable/look_me_activi_bg.xml
@@ -0,0 +1,10 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/drawable/look_me_not_online_bg.xml b/app/src/main/res/drawable/look_me_not_online_bg.xml
new file mode 100644
index 0000000..ecaea5e
--- /dev/null
+++ b/app/src/main/res/drawable/look_me_not_online_bg.xml
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/drawable/shape_dddddd_line_oval_bg.xml b/app/src/main/res/drawable/shape_dddddd_line_oval_bg.xml
new file mode 100644
index 0000000..6ae139f
--- /dev/null
+++ b/app/src/main/res/drawable/shape_dddddd_line_oval_bg.xml
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/drawable/shape_main_color_line_oval_bg.xml b/app/src/main/res/drawable/shape_main_color_line_oval_bg.xml
new file mode 100644
index 0000000..7e4a6f5
--- /dev/null
+++ b/app/src/main/res/drawable/shape_main_color_line_oval_bg.xml
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_contact_list.xml b/app/src/main/res/layout/activity_contact_list.xml
new file mode 100644
index 0000000..cc15c37
--- /dev/null
+++ b/app/src/main/res/layout/activity_contact_list.xml
@@ -0,0 +1,27 @@
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_visittor.xml b/app/src/main/res/layout/activity_visittor.xml
new file mode 100644
index 0000000..cc15c37
--- /dev/null
+++ b/app/src/main/res/layout/activity_visittor.xml
@@ -0,0 +1,27 @@
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_contact_list.xml b/app/src/main/res/layout/fragment_contact_list.xml
new file mode 100644
index 0000000..8293a0d
--- /dev/null
+++ b/app/src/main/res/layout/fragment_contact_list.xml
@@ -0,0 +1,75 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_setting2.xml b/app/src/main/res/layout/fragment_setting2.xml
index 3006da8..59ff3a8 100644
--- a/app/src/main/res/layout/fragment_setting2.xml
+++ b/app/src/main/res/layout/fragment_setting2.xml
@@ -374,18 +374,18 @@
+ app:rv_backgroundColor="#f94f2e"
+ app:rv_cornerRadius="9dp" />
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/item_main_look_me.xml b/app/src/main/res/layout/item_main_look_me.xml
index d1c69d7..77876cf 100644
--- a/app/src/main/res/layout/item_main_look_me.xml
+++ b/app/src/main/res/layout/item_main_look_me.xml
@@ -1,21 +1,33 @@
-
+ android:orientation="vertical"
+ tools:viewBindingIgnore="true">
-
+ android:layout_height="80dp">
+
+
+ android:layout_height="@dimen/dp50"
+ android:layout_centerVertical="true"
+ android:layout_marginLeft="16dp">
-
+ android:orientation="horizontal"
+ android:gravity="center_vertical">
+
+
+
+
+
+
+
+ android:layout_alignParentRight="true"
+ android:layout_centerVertical="true"
+ android:layout_marginRight="16dp"
+ android:orientation="vertical"
+ android:visibility="gone">
+ android:textSize="12sp" />
-
+ android:orientation="horizontal">
-
+
+
+
+
+
+
+
-
+
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/uikit/src/main/res/layout/title.xml b/uikit/src/main/res/layout/title.xml
index 0f9c50a..eac19da 100644
--- a/uikit/src/main/res/layout/title.xml
+++ b/uikit/src/main/res/layout/title.xml
@@ -4,7 +4,7 @@
android:id="@+id/title_bg"
android:layout_width="match_parent"
android:layout_height="80dp"
- android:background="@color/tran_color"
+ android:background="#ffffff"
tools:viewBindingIgnore="true"
android:orientation="vertical">