From 454a84caa83c4ebc1b4c422f10166bddfb0e03ec Mon Sep 17 00:00:00 2001
From: Linjiajia <319408893@qq.com>
Date: 星期四, 21 九月 2023 21:53:30 +0800
Subject: [PATCH] 1、修复添加按钮消失问题\n2、修改家族导图\n3、新增便捷添加功能\n4、新增修改头像功能\n5、个人财产增加搜索条件

---
 app_base/src/main/java/com/android/app_base/base/view/BaseFragment.java                                        |    9 
 app/src/main/java/com/application/zhangshi_app_android/widget/Node.java                                        |   62 
 app/src/main/res/layout/fragment_personal_center.xml                                                           |   10 
 app/src/main/res/layout/fragment_function.xml                                                                  |   18 
 app/src/main/java/com/application/zhangshi_app_android/ui/function/GrowthExperienceActivityViewModel.java      |   11 
 app/src/main/res/layout/pop_basic_information_single.xml                                                       |  761 ++++++++++++
 app/src/main/java/com/application/zhangshi_app_android/ui/personal_center/PersonalCenterFragment.java          |  189 +++
 app/src/main/res/layout/pop_operate_home_root_net.xml                                                          |   71 -
 app/src/main/res/drawable-xxhdpi/bg_home_root.png                                                              |    0 
 app/src/main/res/drawable-xhdpi/ic_camera.png                                                                  |    0 
 app/src/main/java/com/application/zhangshi_app_android/ui/DLBaseFragment.java                                  |   25 
 app/src/main/res/layout/activity_little_doctor_detail.xml                                                      |    2 
 app/src/main/res/layout/activity_health_care.xml                                                               |    2 
 app/src/main/java/com/application/zhangshi_app_android/widget/DoubleNode.java                                  |    4 
 app/src/main/res/drawable-xxhdpi/ic_camera.png                                                                 |    0 
 app/src/main/res/layout/activity_marriage.xml                                                                  |    3 
 app/src/main/java/com/application/zhangshi_app_android/widget/HomeMindMapLayout.java                           |   70 
 app/src/main/res/layout/activity_property.xml                                                                  |   92 +
 app/src/main/java/com/application/zhangshi_app_android/ui/function/PropertyActivity.java                       |   33 
 app/src/main/java/com/application/zhangshi_app_android/ui/main/MainActivity.java                               |    2 
 app/src/main/java/com/application/zhangshi_app_android/ui/DLBaseActivity.java                                  |   18 
 app/src/main/java/com/application/zhangshi_app_android/ui/personal_center/PersonalCenterFragmentViewModel.java |   87 +
 app/src/main/java/com/application/zhangshi_app_android/ui/home/HomeFragment.java                               |  455 ------
 app/src/main/res/layout/item_family_member.xml                                                                 |    6 
 app/src/main/res/layout/dialog_toatal_add.xml                                                                  |  272 ++++
 app/src/main/java/com/application/zhangshi_app_android/ui/home/HomeFragmentViewModel.java                      |   21 
 app/src/main/java/com/application/zhangshi_app_android/widget/SimpleNode.java                                  |    2 
 app/src/main/res/layout/fragment_home.xml                                                                      | 1230 -------------------
 app/src/main/res/layout/activity_home_devices_detail.xml                                                       |    2 
 app/src/main/res/layout/pop_basic_information_double.xml                                                       |    2 
 app/src/main/java/com/application/zhangshi_app_android/ui/function/FunctionFragment.java                       |   75 +
 app_base/src/main/java/com/android/app_base/base/view/BaseActivity.java                                        |    6 
 app/src/main/java/com/application/zhangshi_app_android/bean/PropertyRequestBean.java                           |   41 
 app/src/main/res/drawable-xhdpi/bg_home_root.png                                                               |    0 
 app/src/main/res/layout/activity_login.xml                                                                     |    1 
 app/src/main/java/com/application/zhangshi_app_android/ui/dialog/TotalAddDialog.java                           |  118 +
 36 files changed, 1,884 insertions(+), 1,816 deletions(-)

diff --git a/app/src/main/java/com/application/zhangshi_app_android/bean/PropertyRequestBean.java b/app/src/main/java/com/application/zhangshi_app_android/bean/PropertyRequestBean.java
index 2ef3bf3..491a111 100644
--- a/app/src/main/java/com/application/zhangshi_app_android/bean/PropertyRequestBean.java
+++ b/app/src/main/java/com/application/zhangshi_app_android/bean/PropertyRequestBean.java
@@ -11,6 +11,9 @@
     private String type;//绫诲瀷
     private String name;//鍚嶇О
     private String term;//鏈熼檺
+    private String isChange;//鍙樻洿鎴栨敞閿�
+    private int status = -1;//鏄惁娉ㄩ攢 1.鏄� 0.鍚�
+    private String statusStr;//鏄惁娉ㄩ攢
     private String happenStartTime;//鏃堕棿寮�濮�
     private String happenEndTime;//鏃堕棿缁撴潫
 
@@ -46,12 +49,46 @@
         this.happenStartTime = happenStartTime;
     }
 
+    public String getIsChange() {
+        return isChange;
+    }
+
+    public void setIsChange(String isChange) {
+        this.isChange = isChange;
+    }
+
+    public int getStatus() {
+        return status;
+    }
+
+    public void setStatus(int status) {
+        this.status = status;
+    }
+
     public String getHappenEndTime() {
         return happenEndTime;
     }
 
     public void setHappenEndTime(String happenEndTime) {
         this.happenEndTime = happenEndTime;
+    }
+
+    public String getStatusStr() {
+        if (status == 1){
+            statusStr = "鏄�";
+        }else if (status == 0) {
+            statusStr = "鍚�";
+        }
+        return statusStr;
+    }
+
+    public void setStatusStr(String statusStr) {
+        this.statusStr = statusStr;
+        if ("鏄�".equals(statusStr)) {
+            status = 1;
+        }else if ("鍚�".equals(statusStr)) {
+            status = 0;
+        }
     }
 
     @Override
@@ -62,6 +99,10 @@
         map.put("term",term==null?"":term);
         map.put("happenStartTime",happenStartTime==null?"":happenStartTime);
         map.put("happenEndTime",happenEndTime==null?"":happenEndTime);
+        map.put("isChange",isChange==null?"":isChange);
+        if (status != -1){
+            map.put("status",status);
+        }
         return map;
     }
 }
diff --git a/app/src/main/java/com/application/zhangshi_app_android/ui/DLBaseActivity.java b/app/src/main/java/com/application/zhangshi_app_android/ui/DLBaseActivity.java
index 0b4cd83..a93d8b1 100644
--- a/app/src/main/java/com/application/zhangshi_app_android/ui/DLBaseActivity.java
+++ b/app/src/main/java/com/application/zhangshi_app_android/ui/DLBaseActivity.java
@@ -21,6 +21,8 @@
 import com.android.app_base.manager.UserManager;
 import com.android.app_base.utils.GlideUtil;
 import com.android.app_base.utils.ScreenSizeUtils;
+import com.android.app_base.utils.rxbus.MessageEvent;
+import com.android.app_base.utils.rxbus.RxBus;
 import com.application.zhangshi_app_android.R;
 import com.application.zhangshi_app_android.ui.function.CertificateOfHonorActivity;
 import com.application.zhangshi_app_android.ui.function.CleanStorageActivity;
@@ -54,6 +56,8 @@
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
+
+import io.reactivex.functions.Consumer;
 
 /**
  * @author Ljj
@@ -142,13 +146,23 @@
             mDrawerLayout.setScrimColor(getResources().getColor(R.color.color_shadow));
 
         }
+
+        setNameAndAvatar(UserManager.getInstance().getUserName(),UserManager.getInstance().getUserAvatar());
+        RxBus.getInstance().toObservable(this, MessageEvent.class).subscribe(new Consumer<MessageEvent>() {
+            @Override
+            public void accept(MessageEvent event) throws Exception {
+                if(event.getMessageEventCode() == MessageEvent.EVENT_UPDATE_USER_INFO){
+                    setNameAndAvatar(UserManager.getInstance().getUserName(),UserManager.getInstance().getUserAvatar());
+                }
+            }
+        });
     }
 
     public void setNameAndAvatar(String name,String avatar){
         if (mDrawerLayout != null){
-            GlideUtil.loadImage(UserManager.getInstance().getUserAvatar(), findViewById(R.id.dl_home_user_avatar));
+            GlideUtil.loadImage(avatar, findViewById(R.id.dl_home_user_avatar));
             TextView userNameTv = findViewById(R.id.dl_home_user_name);
-            userNameTv.setText(UserManager.getInstance().getUserName());
+            userNameTv.setText(name);
         }
     }
     private void setSelectItem(LinearLayout linearLayout) {
diff --git a/app/src/main/java/com/application/zhangshi_app_android/ui/DLBaseFragment.java b/app/src/main/java/com/application/zhangshi_app_android/ui/DLBaseFragment.java
index 90f73d9..1985b69 100644
--- a/app/src/main/java/com/application/zhangshi_app_android/ui/DLBaseFragment.java
+++ b/app/src/main/java/com/application/zhangshi_app_android/ui/DLBaseFragment.java
@@ -22,6 +22,8 @@
 import com.android.app_base.manager.AppManager;
 import com.android.app_base.manager.UserManager;
 import com.android.app_base.utils.GlideUtil;
+import com.android.app_base.utils.rxbus.MessageEvent;
+import com.android.app_base.utils.rxbus.RxBus;
 import com.application.zhangshi_app_android.R;
 import com.application.zhangshi_app_android.ui.function.CertificateOfHonorActivity;
 import com.application.zhangshi_app_android.ui.function.CleanStorageActivity;
@@ -45,6 +47,8 @@
 
 import java.util.HashMap;
 import java.util.Map;
+
+import io.reactivex.functions.Consumer;
 
 /**
  * @author Ljj
@@ -143,10 +147,17 @@
                 }
             }
             mDrawerLayout.setScrimColor(getResources().getColor(R.color.color_shadow));
-            GlideUtil.loadImage(UserManager.getInstance().getUserAvatar(), findViewById(R.id.dl_home_user_avatar));
-            TextView userNameTv = findViewById(R.id.dl_home_user_name);
-            userNameTv.setText(UserManager.getInstance().getUserName());
         }
+
+        setNameAndAvatar(UserManager.getInstance().getUserName(),UserManager.getInstance().getUserAvatar());
+        RxBus.getInstance().toObservable(this, MessageEvent.class).subscribe(new Consumer<MessageEvent>() {
+            @Override
+            public void accept(MessageEvent event) throws Exception {
+                if(event.getMessageEventCode() == MessageEvent.EVENT_UPDATE_USER_INFO){
+                    setNameAndAvatar(UserManager.getInstance().getUserName(),UserManager.getInstance().getUserAvatar());
+                }
+            }
+        });
     }
     private void setSelectItem(LinearLayout linearLayout) {
         if (linearLayout == null){
@@ -158,7 +169,13 @@
         imageView.setBackgroundResource(R.drawable.ic_vector_pink);
     }
 
-
+    public void setNameAndAvatar(String name,String avatar){
+        if (mDrawerLayout != null){
+            GlideUtil.loadImage(avatar, findViewById(R.id.dl_home_user_avatar));
+            TextView userNameTv = findViewById(R.id.dl_home_user_name);
+            userNameTv.setText(name);
+        }
+    }
     /**
      * 鑾峰彇DrawerLayout
      */
diff --git a/app/src/main/java/com/application/zhangshi_app_android/ui/dialog/TotalAddDialog.java b/app/src/main/java/com/application/zhangshi_app_android/ui/dialog/TotalAddDialog.java
new file mode 100644
index 0000000..1002c1a
--- /dev/null
+++ b/app/src/main/java/com/application/zhangshi_app_android/ui/dialog/TotalAddDialog.java
@@ -0,0 +1,118 @@
+package com.application.zhangshi_app_android.ui.dialog;
+
+import android.content.Context;
+import android.content.Intent;
+import android.view.Gravity;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.widget.FrameLayout;
+import android.widget.ImageView;
+
+import androidx.databinding.DataBindingUtil;
+
+import com.android.app_base.base.BaseConfig;
+import com.android.app_base.base.dialog.BaseDialog;
+import com.android.app_base.manager.AppManager;
+import com.application.zhangshi_app_android.R;
+import com.application.zhangshi_app_android.bean.PetBean;
+import com.application.zhangshi_app_android.databinding.DialogPetOwnerInfoBinding;
+import com.application.zhangshi_app_android.databinding.DialogToatalAddBinding;
+import com.application.zhangshi_app_android.ui.function.AnnualHealthStatusDetailActivity;
+import com.application.zhangshi_app_android.ui.function.CleanStorageDetailActivity;
+import com.application.zhangshi_app_android.ui.function.FamilyMemorabiliaDetailActivity;
+import com.application.zhangshi_app_android.ui.function.HomeDevicesDetailActivity;
+import com.application.zhangshi_app_android.ui.function.IncomeAndExpensesDetailActivity;
+import com.application.zhangshi_app_android.ui.function.LittleDoctorDetailActivity;
+import com.application.zhangshi_app_android.ui.function.TourismDetailActivity;
+
+/**
+ * @author Ljj
+ * @date 2023.09.16. 20:54
+ * @desc 渚挎嵎娣诲姞寮圭獥
+ */
+public class TotalAddDialog {
+    public static class Builder extends BaseDialog.Builder<TotalAddDialog.Builder> {
+        private DialogToatalAddBinding binding;
+        public Builder(Context context) {
+            super(context);
+            binding = DataBindingUtil.inflate(LayoutInflater.from(getContext()), R.layout.dialog_toatal_add,new FrameLayout(getContext()),false);
+            setContentView(binding.getRoot());
+            setAnimStyle(BaseDialog.ANIM_IOS);
+            setBackgroundDimEnabled(false);
+            setCancelable(true);
+            setGravity(Gravity.CENTER);
+            binding.ivDialogClose.setOnClickListener(new View.OnClickListener() {
+                @Override
+                public void onClick(View v) {
+                    if (getDialog() != null) {
+                        getDialog().dismiss();
+                    }
+                }
+            });
+            binding.layoutFamilyMemorabilia.setOnClickListener(new View.OnClickListener() {
+                @Override
+                public void onClick(View view) {
+                    AppManager.getAppManager().startActivity(new Intent(context, FamilyMemorabiliaDetailActivity.class).putExtra(BaseConfig.EXTRA_TYPE,1));
+                    if (getDialog() != null) {
+                        getDialog().dismiss();
+                    }
+                }
+            });
+            binding.layoutHomeDevices.setOnClickListener(new View.OnClickListener() {
+                @Override
+                public void onClick(View view) {
+                    AppManager.getAppManager().startActivity(new Intent(context, HomeDevicesDetailActivity.class).putExtra(BaseConfig.EXTRA_TYPE,1));
+                    if (getDialog() != null) {
+                        getDialog().dismiss();
+                    }
+                }
+            });
+            binding.layoutLittleDoctor.setOnClickListener(new View.OnClickListener() {
+                @Override
+                public void onClick(View view) {
+                    AppManager.getAppManager().startActivity(new Intent(context, LittleDoctorDetailActivity.class).putExtra(BaseConfig.EXTRA_TYPE,1));
+                    if (getDialog() != null) {
+                        getDialog().dismiss();
+                    }
+                }
+            });
+            binding.layoutCleanStorage.setOnClickListener(new View.OnClickListener() {
+                @Override
+                public void onClick(View view) {
+                    AppManager.getAppManager().startActivity(new Intent(context, CleanStorageDetailActivity.class).putExtra(BaseConfig.EXTRA_TYPE,1));
+                    if (getDialog() != null) {
+                        getDialog().dismiss();
+                    }
+                }
+            });
+            binding.layoutIncomeAndExpenses.setOnClickListener(new View.OnClickListener() {
+                @Override
+                public void onClick(View v) {
+                    AppManager.getAppManager().startActivity(new Intent(context, IncomeAndExpensesDetailActivity.class).putExtra(BaseConfig.EXTRA_TYPE,1));
+                    if (getDialog() != null) {
+                        getDialog().dismiss();
+                    }
+                }
+            });
+            binding.layoutHealthCare.setOnClickListener(new View.OnClickListener() {
+                @Override
+                public void onClick(View v) {
+                    AppManager.getAppManager().startActivity(new Intent(context, AnnualHealthStatusDetailActivity.class).putExtra(BaseConfig.EXTRA_TYPE,1));
+                    if (getDialog() != null) {
+                        getDialog().dismiss();
+                    }
+                }
+            });
+            binding.layoutTourism.setOnClickListener(new View.OnClickListener() {
+                @Override
+                public void onClick(View v) {
+                    AppManager.getAppManager().startActivity(new Intent(context, TourismDetailActivity.class).putExtra(BaseConfig.EXTRA_TYPE,1));
+                    if (getDialog() != null) {
+                        getDialog().dismiss();
+                    }
+                }
+            });
+        }
+    }
+
+}
diff --git a/app/src/main/java/com/application/zhangshi_app_android/ui/function/FunctionFragment.java b/app/src/main/java/com/application/zhangshi_app_android/ui/function/FunctionFragment.java
index 3d4297a..dbb4ce6 100644
--- a/app/src/main/java/com/application/zhangshi_app_android/ui/function/FunctionFragment.java
+++ b/app/src/main/java/com/application/zhangshi_app_android/ui/function/FunctionFragment.java
@@ -2,6 +2,8 @@
 
 import android.content.Intent;
 import android.os.Bundle;
+import android.view.GestureDetector;
+import android.view.MotionEvent;
 import android.view.View;
 import android.widget.PopupWindow;
 
@@ -16,6 +18,7 @@
 import com.application.zhangshi_app_android.bean.BannerBean;
 import com.application.zhangshi_app_android.databinding.FragmentFunctionBinding;
 import com.application.zhangshi_app_android.ui.DLBaseFragment;
+import com.application.zhangshi_app_android.ui.dialog.TotalAddDialog;
 import com.application.zhangshi_app_android.ui.home.HomeFragment;
 import com.application.zhangshi_app_android.ui.main.MainActivity;
 
@@ -31,6 +34,7 @@
 public class FunctionFragment extends DLBaseFragment<FragmentFunctionBinding,FunctionFragmentViewModel> {
 
     private PopupWindow mOperatePopupWindow;
+    private PopupWindow mAddPopupWindow;
     private ImageCarouselFragment imageCarouselFragment;
     private VideoCarouselFragment videoCarouselFragment;
 
@@ -130,6 +134,76 @@
             AppManager.getAppManager().startActivity(ContactsActivity.class);
         });
 
+        binding.fabAdd.setOnClickListener(new View.OnClickListener() {
+            @Override
+            public void onClick(View v) {
+
+            }
+        });
+        binding.fabAdd.setOnTouchListener(new View.OnTouchListener() {
+
+            private boolean isDragging = false;
+            private int startX, startY;
+            private float dX, dY;
+
+            @Override
+            public boolean onTouch(View v, MotionEvent event) {
+                boolean flag = false;
+
+                switch (event.getAction()) {
+                    case MotionEvent.ACTION_DOWN:
+                        // 璁$畻鎵嬫寚鎸変笅鏃剁浉瀵逛簬 FloatingActionButton 鐨勫亸绉婚噺
+                        dX = v.getX() - event.getRawX();
+                        dY = v.getY() - event.getRawY();
+                        startY = (int) event.getRawY();
+                        startX = (int) event.getRawX();
+                        isDragging = false;
+                        break;
+                    case MotionEvent.ACTION_MOVE:
+                        // 鏇存柊 FloatingActionButton 鐨勪綅缃�
+                        float newX = event.getRawX() + dX;
+                        float newY = event.getRawY() + dY;
+
+                        // 闄愬埗绉诲姩鑼冨洿
+                        float minX = 0;
+                        float maxX = binding.container.getWidth() - v.getWidth();
+                        float minY = 0;
+                        float maxY = binding.container.getHeight() - v.getHeight();
+
+                        // 纭繚涓嶈秴鍑鸿寖鍥�
+                        if (newX < minX) {
+                            newX = minX;
+                        } else if (newX > maxX) {
+                            newX = maxX;
+                        }
+
+                        if (newY < minY) {
+                            newY = minY;
+                        } else if (newY > maxY) {
+                            newY = maxY;
+                        }
+                        v.setX(newX);
+                        v.setY(newY);
+                        if (Math.abs(event.getRawX() - startX) > 10 || Math.abs(event.getRawY() - startY) > 10) {
+                            isDragging = true; // 濡傛灉绉诲姩璺濈澶т簬闃堝�硷紝璁や负鏄嫋鍔�
+                        }else {
+                            isDragging = false;
+                        }
+                        flag = true;
+                        break;
+                    case MotionEvent.ACTION_UP:
+                        if (!isDragging) {
+                            // 濡傛灉娌℃湁鎷栧姩锛岃涓烘槸鐐瑰嚮浜嬩欢
+                            new TotalAddDialog.Builder(getContext()).show();
+                        }
+                        break;
+                    default:
+                        break;
+                }
+                return flag;
+            }
+        });
+
         binding.ivOperateSelect.setOnClickListener(new View.OnClickListener() {
             @Override
             public void onClick(View v) {
@@ -213,5 +287,6 @@
     protected boolean isStatusBarImmersionEnabled() {
         return true;
     }
+
 }
 
diff --git a/app/src/main/java/com/application/zhangshi_app_android/ui/function/GrowthExperienceActivityViewModel.java b/app/src/main/java/com/application/zhangshi_app_android/ui/function/GrowthExperienceActivityViewModel.java
index 0255a1b..9028334 100644
--- a/app/src/main/java/com/application/zhangshi_app_android/ui/function/GrowthExperienceActivityViewModel.java
+++ b/app/src/main/java/com/application/zhangshi_app_android/ui/function/GrowthExperienceActivityViewModel.java
@@ -6,8 +6,11 @@
 import androidx.lifecycle.MutableLiveData;
 
 import com.android.app_base.http.ResultData;
+import com.android.app_base.manager.UserManager;
 import com.android.app_base.utils.RxUtils;
 import com.android.app_base.base.viewmodel.BaseViewModel;
+import com.android.app_base.utils.rxbus.MessageEvent;
+import com.android.app_base.utils.rxbus.RxBus;
 import com.application.zhangshi_app_android.bean.GrowthExperienceAbroadConditionBean;
 import com.application.zhangshi_app_android.bean.GrowthExperienceAutobiographyBean;
 import com.application.zhangshi_app_android.bean.GrowthExperienceBean;
@@ -96,7 +99,13 @@
                     @Override
                     public void onNext(ResultData<GrowthExperienceInformationBean> data) {
                         if (data.getCode() == CODE_SUCCESS){
-                            infoLiveData.postValue(data.getData());
+                            GrowthExperienceInformationBean informationBean = data.getData();
+                            infoLiveData.postValue(informationBean);
+                            if(informationBean != null){
+                                UserManager.getInstance().setUserName(informationBean.getNickName());
+                                UserManager.getInstance().setUserAvatar(informationBean.getImg());
+                                RxBus.getInstance().post(new MessageEvent(MessageEvent.EVENT_UPDATE_USER_INFO,informationBean));
+                            }
                         }else {
                             messageLiveData.postValue(data.getMsg());
                         }
diff --git a/app/src/main/java/com/application/zhangshi_app_android/ui/function/PropertyActivity.java b/app/src/main/java/com/application/zhangshi_app_android/ui/function/PropertyActivity.java
index c2167ed..b24acb3 100644
--- a/app/src/main/java/com/application/zhangshi_app_android/ui/function/PropertyActivity.java
+++ b/app/src/main/java/com/application/zhangshi_app_android/ui/function/PropertyActivity.java
@@ -16,7 +16,12 @@
 import com.application.zhangshi_app_android.databinding.ActivityPropertyBinding;
 import com.application.zhangshi_app_android.ui.DLBaseActivity;
 import com.github.gzuliyujiang.wheelpicker.DatePicker;
+import com.github.gzuliyujiang.wheelpicker.OptionPicker;
 import com.github.gzuliyujiang.wheelpicker.contract.OnDatePickedListener;
+import com.github.gzuliyujiang.wheelpicker.contract.OnOptionPickedListener;
+
+import java.util.ArrayList;
+import java.util.List;
 
 /**
  * @author Ljj
@@ -200,6 +205,34 @@
             binding.etStartTime.setText("");
             binding.etEndTime.setText("");
         });
+        binding.etIsChange.setOnClickListener(v -> {
+            List<String> list = new ArrayList<>();
+            list.add("鍙樻洿");
+            list.add("娉ㄩ攢");
+            OptionPicker picker = getOptionPicker(list);
+            picker.setTitle("鍙樻洿鎴栨敞閿�");
+            picker.setOnOptionPickedListener(new OnOptionPickedListener() {
+                @Override
+                public void onOptionPicked(int position, Object item) {
+                    binding.etIsChange.setText(item.toString());
+                }
+            });
+            picker.show();
+        });
+        binding.etIsLogout.setOnClickListener(v -> {
+            List<String> list = new ArrayList<>();
+            list.add("鏄�");
+            list.add("鍚�");
+            OptionPicker picker = getOptionPicker(list);
+            picker.setTitle("鏄惁娉ㄩ攢");
+            picker.setOnOptionPickedListener(new OnOptionPickedListener() {
+                @Override
+                public void onOptionPicked(int position, Object item) {
+                    binding.etIsLogout.setText(item.toString());
+                }
+            });
+            picker.show();
+        });
     }
     @Override
     public boolean dispatchTouchEvent(MotionEvent event) {
diff --git a/app/src/main/java/com/application/zhangshi_app_android/ui/home/HomeFragment.java b/app/src/main/java/com/application/zhangshi_app_android/ui/home/HomeFragment.java
index 4a9f5e5..9123e90 100644
--- a/app/src/main/java/com/application/zhangshi_app_android/ui/home/HomeFragment.java
+++ b/app/src/main/java/com/application/zhangshi_app_android/ui/home/HomeFragment.java
@@ -1,43 +1,26 @@
 package com.application.zhangshi_app_android.ui.home;
 
-import android.animation.Animator;
-import android.animation.AnimatorListenerAdapter;
-import android.animation.ObjectAnimator;
 import android.annotation.SuppressLint;
 import android.graphics.drawable.ColorDrawable;
 import android.os.Bundle;
-import android.view.GestureDetector;
-import android.view.MotionEvent;
 import android.view.View;
 import android.view.ViewGroup;
-import android.view.animation.AlphaAnimation;
-import android.view.animation.Animation;
-import android.view.animation.AnimationSet;
-import android.view.animation.ScaleAnimation;
 import android.widget.PopupWindow;
-import android.widget.TextView;
 
-import androidx.constraintlayout.utils.widget.ImageFilterView;
-import androidx.constraintlayout.widget.ConstraintLayout;
 import androidx.databinding.DataBindingUtil;
 import androidx.lifecycle.Observer;
 
-import com.android.app_base.base.view.BaseFragment;
 import com.android.app_base.manager.AppManager;
-import com.android.app_base.utils.GlideUtil;
 import com.android.app_base.utils.ScreenSizeUtils;
-import com.android.app_base.widget.LinearItemDecoration;
 import com.application.zhangshi_app_android.BR;
 import com.application.zhangshi_app_android.R;
-import com.application.zhangshi_app_android.adapter.HomeMemberAdapter;
-import com.application.zhangshi_app_android.bean.HomeMemberBean;
 import com.application.zhangshi_app_android.bean.HomeRootBean;
 import com.application.zhangshi_app_android.databinding.FragmentHomeBinding;
-import com.application.zhangshi_app_android.databinding.PopBasicInformationBinding;
+import com.application.zhangshi_app_android.databinding.PopBasicInformationDoubleBinding;
+import com.application.zhangshi_app_android.databinding.PopBasicInformationSingleBinding;
 import com.application.zhangshi_app_android.ui.DLBaseFragment;
-import com.hjq.bar.TitleBar;
+import com.application.zhangshi_app_android.widget.HomeMindMapLayout;
 
-import java.util.ArrayList;
 import java.util.List;
 
 /**
@@ -47,18 +30,6 @@
  */
 public class HomeFragment extends DLBaseFragment<FragmentHomeBinding,HomeFragmentViewModel> {
     private PopupWindow mOperatePopupWindow;
-    private ViewOperator firstViewOperator1;//绗竴浠�
-    private ViewOperator firstViewOperator2;//绗竴浠�
-    private List<ViewOperator> secondSelfList;//绗簩浠e洓涓垎鏀�
-    private List<ViewOperator> secondSpouseList;//绗簩浠e洓涓垎鏀殑閰嶅伓
-
-    private List<List<ViewOperator>> thirdSelfListList;//绗笁浠e洓涓垎鏀殑鍒楄〃
-
-
-    private List<List<ViewOperator>> fourthSelfListList;//绗洓浠e洓涓垎鏀殑鍒楄〃
-
-
-
     public HomeFragment() {
     }
 
@@ -91,180 +62,48 @@
         binding.ivOperate.setOnClickListener(v -> {
             mOperatePopupWindow.showAsDropDown(binding.ivOperate,-ScreenSizeUtils.dip2px(getSelfActivity(),120) +binding.ivOperate.getWidth(),0);
         });
-        mOperatePopupWindow.getContentView().findViewById(R.id.tv_first).setOnClickListener(v -> {
-            binding.ivTreeViewDiff.setBackgroundResource(R.drawable.bg_home_root_net_detail_first);
-            viewModel.setIndexLiveData(0);
-        });
-        mOperatePopupWindow.getContentView().findViewById(R.id.tv_second).setOnClickListener(v -> {
-            binding.ivTreeViewDiff.setBackgroundResource(R.drawable.bg_home_root_net_detail_second);
-            viewModel.setIndexLiveData(1);
-        });
-        mOperatePopupWindow.getContentView().findViewById(R.id.tv_third).setOnClickListener(v -> {
-            binding.ivTreeViewDiff.setBackgroundResource(R.drawable.bg_home_root_net_detail_third);
-            viewModel.setIndexLiveData(2);
-        });
-        mOperatePopupWindow.getContentView().findViewById(R.id.tv_all).setOnClickListener(v -> {
-            binding.ivTreeViewDiff.setBackgroundResource(R.drawable.bg_home_root_net_detail);
-            viewModel.setIndexLiveData(3);
-        });
         mOperatePopupWindow.getContentView().findViewById(R.id.tv_family).setOnClickListener(v -> {
             AppManager.getAppManager().startActivity(GenealogyActivity.class);
             mOperatePopupWindow.dismiss();
         });
-        mOperatePopupWindow.getContentView().findViewById(R.id.tv_relation).setOnClickListener(v -> {
-            AppManager.getAppManager().startActivity(HomeMindMapActivity.class);
-            mOperatePopupWindow.dismiss();
+        binding.scrollHomeMindMapLayout.setOnItemClickListener(new HomeMindMapLayout.OnItemClickListener() {
+            @Override
+            public void onItemClick(View view, HomeRootBean bean) {
+                View contentView;
+                if (bean.getSpouse()!=null) {
+                    bean.getSpouse().setSpouse(bean);
+                    PopBasicInformationDoubleBinding binding= DataBindingUtil.inflate(getLayoutInflater(),R.layout.pop_basic_information_double,null,false);
+                    binding.setSelfBean(bean);
+                    binding.setSpouseBean(bean.getSpouse());
+                    contentView = binding.getRoot();
+                }else {
+                    PopBasicInformationSingleBinding binding = DataBindingUtil.inflate(getLayoutInflater(),R.layout.pop_basic_information_single,null,false);
+                    binding.setSelfBean(bean);
+                    contentView = binding.getRoot();
+                }
+                PopupWindow popupWindow = new PopupWindow();
+                // 璁剧疆甯冨眬鏂囦欢
+                popupWindow.setContentView(contentView);
+                // 涓轰簡閬垮厤閮ㄥ垎鏈哄瀷涓嶆樉绀猴紝闇�瑕侀噸鏂拌缃竴涓嬪楂�
+                popupWindow.setWidth(ViewGroup.LayoutParams.WRAP_CONTENT);
+                popupWindow.setHeight(ViewGroup.LayoutParams.WRAP_CONTENT);
+                // 璁剧疆pop閫忔槑鏁堟灉
+                popupWindow.setBackgroundDrawable(new ColorDrawable(0x0000));
+                // 璁剧疆pop鍑哄叆鍔ㄧ敾
+                popupWindow.setAnimationStyle(com.android.app_base.R.style.pop_info);
+                // 璁剧疆pop鑾峰彇鐒︾偣锛屽鏋滀负false鐐瑰嚮杩斿洖鎸夐挳浼氶��鍑哄綋鍓岮ctivity锛屽鏋減op涓湁Editor鐨勮瘽锛宖ocusable蹇呴』瑕佷负true
+                popupWindow.setFocusable(true);
+                // 璁剧疆pop鍙偣鍑伙紝涓篺alse鐐瑰嚮浜嬩欢鏃犳晥锛岄粯璁や负true
+                popupWindow.setTouchable(true);
+                // 璁剧疆鐐瑰嚮pop澶栦晶娑堝け锛岄粯璁や负false锛涘湪focusable涓簍rue鏃剁偣鍑诲渚у缁堟秷澶�
+                popupWindow.setOutsideTouchable(false);
+
+
+                popupWindow.setHeight(binding.zoomLayout.getHeight());
+                popupWindow.setWidth(binding.zoomLayout.getWidth());
+                popupWindow.showAsDropDown(binding.titleBar,0,0);
+            }
         });
-//        final GestureDetector gestureDetector = new GestureDetector(getSelfActivity(), new GestureDetector.SimpleOnGestureListener() {
-//            @Override
-//            public boolean onDoubleTap(MotionEvent e) {
-//                AlphaAnimation alphaAnimation = new AlphaAnimation(0f, 1f);
-//                alphaAnimation.setDuration(1000);
-//                alphaAnimation.setAnimationListener(new Animation.AnimationListener() {
-//                    @Override
-//                    public void onAnimationStart(Animation animation) {
-//                        binding.scrollView.setVisibility(View.VISIBLE);
-//                        binding.scrollView.post(new Runnable() {
-//                            @Override
-//                            public void run() {
-//                                binding.scrollView.scrollTo(binding.scrollView.getChildAt(0).getMeasuredWidth()/2 - ScreenSizeUtils.getScreenWidth(getSelfActivity())/2,0);
-//                            }
-//                        });
-//                    }
-//
-//                    @Override
-//                    public void onAnimationEnd(Animation animation) {
-//                    }
-//
-//                    @Override
-//                    public void onAnimationRepeat(Animation animation) {
-//
-//                    }
-//                });
-//
-//                AlphaAnimation alphaAnimation1 = new AlphaAnimation(1f, 0f);
-//                alphaAnimation1.setDuration(1000);
-//                alphaAnimation1.setAnimationListener(new Animation.AnimationListener() {
-//                    @Override
-//                    public void onAnimationStart(Animation animation) {
-//                        binding.layoutHomeRootNet.setVisibility(View.VISIBLE);
-//                    }
-//
-//                    @Override
-//                    public void onAnimationEnd(Animation animation) {
-//                        binding.layoutHomeRootNet.setVisibility(View.GONE);
-//                    }
-//
-//                    @Override
-//                    public void onAnimationRepeat(Animation animation) {
-//
-//                    }
-//                });
-//
-//                float scale = binding.layoutHomeRootNet.getWidth()/ (binding.ivTreeView.getWidth() * 2f / 3f);
-//                //缂╂斁鍔ㄧ敾
-//                ScaleAnimation scaleAnimation = new ScaleAnimation(1f, scale, 1f, scale, binding.layoutHomeRootNet.getWidth()/2f, binding.layoutHomeRootNet.getHeight()/2f);
-//                scaleAnimation.setDuration(1000);
-//                scaleAnimation.setAnimationListener(new Animation.AnimationListener() {
-//                    @Override
-//                    public void onAnimationStart(Animation animation) {
-//                    }
-//
-//                    @Override
-//                    public void onAnimationEnd(Animation animation) {
-//                        binding.scrollView.startAnimation(alphaAnimation);
-//                        binding.layoutHomeRootNet.startAnimation(alphaAnimation1);
-//                    }
-//
-//                    @Override
-//                    public void onAnimationRepeat(Animation animation) {
-//
-//                    }
-//                });
-//                binding.layoutHomeRootNet.startAnimation(scaleAnimation);
-//
-//                return true;
-//            }
-//        });
-//        binding.layoutHomeRootNet.setOnTouchListener(new View.OnTouchListener() {
-//            @Override
-//            public boolean onTouch(View v, MotionEvent event) {
-//                gestureDetector.onTouchEvent(event);
-//                return true;
-//            }
-//        });
-        binding.layoutHomeRootNet.setVisibility(View.GONE);
-        binding.scrollView.setVisibility(View.VISIBLE);
-
-
-        firstViewOperator1 = new ViewOperator(binding.tvFirst1,binding.ivFirst1);
-        firstViewOperator2 = new ViewOperator(binding.tvFirst2,binding.ivFirst2);
-
-        secondSelfList = new ArrayList<>();
-        secondSpouseList = new ArrayList<>();
-        secondSelfList.add(new ViewOperator(binding.tvSecond11,binding.ivSecond11));
-        secondSpouseList.add(new ViewOperator(binding.tvSecond12,binding.ivSecond12));
-        secondSelfList.add(new ViewOperator(binding.tvSecond21,binding.ivSecond21));
-        secondSpouseList.add(new ViewOperator(binding.tvSecond22,binding.ivSecond22));
-        secondSelfList.add(new ViewOperator(binding.tvSecond31,binding.ivSecond31));
-        secondSpouseList.add(new ViewOperator(binding.tvSecond32,binding.ivSecond32));
-        secondSelfList.add(new ViewOperator(binding.tvSecond41,binding.ivSecond41));
-        secondSpouseList.add(new ViewOperator(binding.tvSecond42,binding.ivSecond42));
-
-        thirdSelfListList = new ArrayList<>();
-
-        List<ViewOperator> thirdSelfList1 = new ArrayList<>();
-        thirdSelfList1.add(new ViewOperator(binding.tvThird11,binding.ivThird11));
-        thirdSelfList1.add(new ViewOperator(binding.tvThird12,binding.ivThird12));
-        thirdSelfList1.add(new ViewOperator(binding.tvThird13,binding.ivThird13));
-        thirdSelfList1.add(new ViewOperator(binding.tvThird14,binding.ivThird14));
-        thirdSelfListList.add(thirdSelfList1);
-
-        List<ViewOperator> thirdSelfList2 = new ArrayList<>();
-        thirdSelfList2.add(new ViewOperator(binding.tvThird21,binding.ivThird21));
-        thirdSelfList2.add(new ViewOperator(binding.tvThird22,binding.ivThird22));
-        thirdSelfList2.add(new ViewOperator(binding.tvThird23,binding.ivThird23));
-        thirdSelfList2.add(new ViewOperator(binding.tvThird24,binding.ivThird24));
-        thirdSelfListList.add(thirdSelfList2);
-
-        List<ViewOperator> thirdSelfList3 = new ArrayList<>();
-        thirdSelfList3.add(new ViewOperator(binding.tvThird31,binding.ivThird31));
-        thirdSelfList3.add(new ViewOperator(binding.tvThird32,binding.ivThird32));
-        thirdSelfList3.add(new ViewOperator(binding.tvThird33,binding.ivThird33));
-        thirdSelfList3.add(new ViewOperator(binding.tvThird34,binding.ivThird34));
-        thirdSelfListList.add(thirdSelfList3);
-
-        List<ViewOperator> thirdSelfList4 = new ArrayList<>();
-        thirdSelfList4.add(new ViewOperator(binding.tvThird41,binding.ivThird41));
-        thirdSelfList4.add(new ViewOperator(binding.tvThird42,binding.ivThird42));
-        thirdSelfListList.add(thirdSelfList4);
-
-        fourthSelfListList = new ArrayList<>();
-
-        List<ViewOperator> fourthSelfList1 = new ArrayList<>();
-        fourthSelfList1.add(new ViewOperator(binding.tvFourth11,binding.ivFourth11));
-        fourthSelfList1.add(new ViewOperator(binding.tvFourth12,binding.ivFourth12));
-        fourthSelfListList.add(fourthSelfList1);
-
-        List<ViewOperator> fourthSelfList2 = new ArrayList<>();
-        fourthSelfList2.add(new ViewOperator(binding.tvFourth21,binding.ivFourth21));
-        fourthSelfList2.add(new ViewOperator(binding.tvFourth22,binding.ivFourth22));
-        fourthSelfList2.add(new ViewOperator(binding.tvFourth23,binding.ivFourth23));
-        fourthSelfList2.add(new ViewOperator(binding.tvFourth24,binding.ivFourth24));
-        fourthSelfListList.add(fourthSelfList2);
-
-        List<ViewOperator> fourthSelfList3 = new ArrayList<>();
-        fourthSelfList3.add(new ViewOperator(binding.tvFourth31,binding.ivFourth31));
-        fourthSelfList3.add(new ViewOperator(binding.tvFourth32,binding.ivFourth32));
-        fourthSelfList3.add(new ViewOperator(binding.tvFourth33,binding.ivFourth33));
-        fourthSelfList3.add(new ViewOperator(binding.tvFourth34,binding.ivFourth34));
-        fourthSelfListList.add(fourthSelfList3);
-
-        List<ViewOperator> fourthSelfList4 = new ArrayList<>();
-        fourthSelfList4.add(new ViewOperator(binding.tvFourth41,binding.ivFourth41));
-        fourthSelfList4.add(new ViewOperator(binding.tvFourth42,binding.ivFourth42));
-        fourthSelfList4.add(new ViewOperator(binding.tvFourth43,binding.ivFourth43));
-        fourthSelfListList.add(fourthSelfList4);
     }
 
 
@@ -276,145 +115,14 @@
 
     @Override
     protected void initLiveDataObserve() {
-        viewModel.getIndexLiveData().observe(this, new Observer<Integer>() {
-            @Override
-            public void onChanged(Integer integer) {
-                firstViewOperator1.setVisibility(View.VISIBLE);
-                firstViewOperator2.setVisibility(View.VISIBLE);
-                if (integer == 0){
-                    for (ViewOperator viewOperator : secondSelfList) {
-                        viewOperator.setVisibility(View.GONE);
-                    }
-                    for (ViewOperator viewOperator : secondSpouseList) {
-                        viewOperator.setVisibility(View.GONE);
-                    }
-                    for (List<ViewOperator> viewOperators : thirdSelfListList) {
-                        for (ViewOperator viewOperator : viewOperators) {
-                            viewOperator.setVisibility(View.GONE);
-                        }
-                    }
-                    for (List<ViewOperator> viewOperators : fourthSelfListList) {
-                        for (ViewOperator viewOperator : viewOperators) {
-                            viewOperator.setVisibility(View.GONE);
-                        }
-                    }
-                }else if (integer == 1){
-                    for (int i = 0; i < secondSelfList.size(); i++) {
-                        if (secondSelfList.get(i).selfBean != null) {
-                            secondSelfList.get(i).setVisibility(View.VISIBLE);
-                        }else {
-                            secondSelfList.get(i).setVisibility(View.GONE);
-                        }
-                        if (secondSpouseList.get(i).selfBean != null) {
-                            secondSpouseList.get(i).setVisibility(View.VISIBLE);
-                        }else {
-                            secondSpouseList.get(i).setVisibility(View.GONE);
-                        }
-                    }
-                    for (List<ViewOperator> viewOperators : thirdSelfListList) {
-                        for (ViewOperator viewOperator : viewOperators) {
-                            viewOperator.setVisibility(View.GONE);
-                        }
-                    }
-                    for (List<ViewOperator> viewOperators : fourthSelfListList) {
-                        for (ViewOperator viewOperator : viewOperators) {
-                            viewOperator.setVisibility(View.GONE);
-                        }
-                    }
-                }else if (integer == 2){
-                    for (int i = 0; i < secondSelfList.size(); i++) {
-                        if (secondSelfList.get(i).selfBean != null) {
-                            secondSelfList.get(i).setVisibility(View.VISIBLE);
-                        }else {
-                            secondSelfList.get(i).setVisibility(View.GONE);
-                        }
-                        if (secondSpouseList.get(i).selfBean != null) {
-                            secondSpouseList.get(i).setVisibility(View.VISIBLE);
-                        }else {
-                            secondSpouseList.get(i).setVisibility(View.GONE);
-                        }
-                    }
-                    for (List<ViewOperator> viewOperators : thirdSelfListList) {
-                        for (ViewOperator viewOperator : viewOperators) {
-                            if (viewOperator.selfBean != null) {
-                                viewOperator.setVisibility(View.VISIBLE);
-                            }else {
-                                viewOperator.setVisibility(View.GONE);
-                            }
-                        }
-                    }
-                    for (List<ViewOperator> viewOperators : fourthSelfListList) {
-                        for (ViewOperator viewOperator : viewOperators) {
-                            viewOperator.setVisibility(View.GONE);
-                        }
-                    }
-                }else if (integer == 3){
-                    for (int i = 0; i < secondSelfList.size(); i++) {
-                        if (secondSelfList.get(i).selfBean != null) {
-                            secondSelfList.get(i).setVisibility(View.VISIBLE);
-                        }else {
-                            secondSelfList.get(i).setVisibility(View.GONE);
-                        }
-                        if (secondSpouseList.get(i).selfBean != null) {
-                            secondSpouseList.get(i).setVisibility(View.VISIBLE);
-                        }else {
-                            secondSpouseList.get(i).setVisibility(View.GONE);
-                        }
-                    }
-                    for (List<ViewOperator> viewOperators : thirdSelfListList) {
-                        for (ViewOperator viewOperator : viewOperators) {
-                            if (viewOperator.selfBean != null) {
-                                viewOperator.setVisibility(View.VISIBLE);
-                            }else {
-                                viewOperator.setVisibility(View.GONE);
-                            }
-                        }
-                    }
-                    for (List<ViewOperator> viewOperators : fourthSelfListList) {
-                        for (ViewOperator viewOperator : viewOperators) {
-                            if (viewOperator.selfBean != null) {
-                                viewOperator.setVisibility(View.VISIBLE);
-                            }else {
-                                viewOperator.setVisibility(View.GONE);
-                            }
-                        }
-                    }
-                }
-            }
-        });
+
         viewModel.getHomeRootBeanLiveData().observe(this, new Observer<List<HomeRootBean>>() {
             @Override
             public void onChanged(List<HomeRootBean> homeRootBeans) {
-                if (homeRootBeans.size() > 0){
-                    //濉厖绗竴浠f暟鎹�
-                    firstViewOperator1.setBean(homeRootBeans.get(0),homeRootBeans.get(0).getSpouse());
-                    firstViewOperator2.setBean(homeRootBeans.get(0).getSpouse(),homeRootBeans.get(0));
-
-                    List<HomeRootBean> secondGeneration = homeRootBeans.get(0).getChildList();//绗簩浠d汉鍛�
-                    for (int i = 0; i < Math.min(homeRootBeans.get(0).getChildList().size(),4); i++) {
-                        //濉厖绗琲鍒嗘敮鐨勭浜屼唬鏁版嵁
-                        secondSelfList.get(i).setBean(secondGeneration.get(i),secondGeneration.get(i).getSpouse());
-                        secondSpouseList.get(i).setBean(secondGeneration.get(i).getSpouse(),secondGeneration.get(i));
-
-                        List<HomeRootBean> thirdGeneration = secondGeneration.get(i).getChildList();//绗琲鍒嗘敮鐨勭涓変唬浜哄憳
-                        List<ViewOperator> thirdList = thirdSelfListList.get(i);//绗琲鍒嗘敮鐨勭涓変唬瀵瑰簲view
-
-                        List<HomeRootBean> fourthGeneration = new ArrayList<>();//绗琲鍒嗘敮鐨勭鍥涗唬浜哄憳
-                        List<ViewOperator> fourthList = fourthSelfListList.get(i);//绗琲鍒嗘敮鐨勭鍥涗唬瀵瑰簲view
-
-                        for (int j = 0; j < Math.min(thirdGeneration.size(),thirdList.size()); j++) {
-                            //濉厖绗琲鍒嗘敮涓嬬殑绗笁浠f暟鎹�
-                            thirdList.get(j).setBean(thirdGeneration.get(j),thirdGeneration.get(j).getSpouse());
-
-                            fourthGeneration.addAll(thirdGeneration.get(j).getChildList());//鏀堕泦绗琲鍒嗘敮涓嬬殑鍏ㄩ儴绗洓浠d汉鍛�
-                        }
-
-                        for (int j = 0; j < Math.min(fourthGeneration.size(),fourthList.size()); j++) {
-                            //濉厖绗琲鍒嗘敮涓嬬殑绗洓浠f暟鎹�
-                            fourthList.get(j).setBean(fourthGeneration.get(j),fourthGeneration.get(j).getSpouse());
-                        }
-                    }
+                if (homeRootBeans == null || homeRootBeans.size() == 0) {
+                    return;
                 }
+                binding.scrollHomeMindMapLayout.setRootMember(homeRootBeans.get(0));
             }
         });
     }
@@ -424,79 +132,4 @@
         return true;
     }
 
-    private class ViewOperator{
-        private TextView tvIndex;
-        private ImageFilterView ivHead;
-        private HomeRootBean selfBean;
-        private HomeRootBean spouseBean;
-
-        public ViewOperator(TextView tvIndex, ImageFilterView ivHead) {
-            this.tvIndex = tvIndex;
-            this.ivHead = ivHead;
-        }
-
-        public void setVisibility(int visibility){
-            tvIndex.setVisibility(visibility);
-            ivHead.setVisibility(visibility);
-        }
-        public void setBean(HomeRootBean selfBean, HomeRootBean spouseBean) {
-            this.selfBean = selfBean;
-            this.spouseBean = spouseBean;
-            if (selfBean == null){
-                tvIndex.setVisibility(View.GONE);
-                ivHead.setVisibility(View.GONE);
-                return;
-            }else {
-                tvIndex.setVisibility(View.VISIBLE);
-                ivHead.setVisibility(View.VISIBLE);
-            }
-            GlideUtil.loadImage(selfBean.getImg(), ivHead);
-            View.OnClickListener clickListener = new View.OnClickListener() {
-                @Override
-                public void onClick(View v) {
-                    PopBasicInformationBinding mBinding= DataBindingUtil.inflate(getLayoutInflater(),R.layout.pop_basic_information,null,false);
-                    PopupWindow mPopupWindow = initPopUpWindow(mBinding.getRoot());
-                    mPopupWindow.setHeight(binding.layoutParent.getHeight());
-                    mPopupWindow.setWidth(binding.layoutParent.getWidth());
-                    mBinding.setSelfBean(selfBean);
-                    mBinding.setSpouseBean(spouseBean);
-                    mPopupWindow.showAsDropDown(binding.titleBar,0,0);
-                }
-            };
-            ivHead.setOnClickListener(clickListener);
-            tvIndex.setOnClickListener(clickListener);
-        }
-
-        public TextView getTvIndex() {
-            return tvIndex;
-        }
-
-        public void setTvIndex(TextView tvIndex) {
-            this.tvIndex = tvIndex;
-        }
-
-        public ImageFilterView getIvHead() {
-            return ivHead;
-        }
-
-        public void setIvHead(ImageFilterView ivHead) {
-            this.ivHead = ivHead;
-        }
-
-        public HomeRootBean getSelfBean() {
-            return selfBean;
-        }
-
-        public void setSelfBean(HomeRootBean selfBean) {
-            this.selfBean = selfBean;
-        }
-
-        public HomeRootBean getSpouseBean() {
-            return spouseBean;
-        }
-
-        public void setSpouseBean(HomeRootBean spouseBean) {
-            this.spouseBean = spouseBean;
-        }
-    }
 }
\ No newline at end of file
diff --git a/app/src/main/java/com/application/zhangshi_app_android/ui/home/HomeFragmentViewModel.java b/app/src/main/java/com/application/zhangshi_app_android/ui/home/HomeFragmentViewModel.java
index f6332e2..f0e432b 100644
--- a/app/src/main/java/com/application/zhangshi_app_android/ui/home/HomeFragmentViewModel.java
+++ b/app/src/main/java/com/application/zhangshi_app_android/ui/home/HomeFragmentViewModel.java
@@ -28,7 +28,6 @@
  * @desc 棣栭〉 Fragment鐨� ViewModel
  */
 public class HomeFragmentViewModel extends BaseViewModel<DataRepository> {
-    private MutableLiveData<Integer> indexLiveData;//鏄剧ず浠f暟(0,1,2,3瀵瑰簲绗竴浠�,绗簩浠�,绗笁浠�,绗洓浠�)
     private MutableLiveData<List<HomeRootBean>> homeRootBeanLiveData;//瀹舵牴缃戞垚鍛樺垪琛�
 
 
@@ -43,7 +42,7 @@
 
 
     public void getHomeRootBeanList() {
-        model.getHomeRoot("4")
+        model.getHomeRoot("1000")
                 .compose(RxUtils.schedulersTransformer())
                 .doFinally(new Action() {
                     @Override
@@ -79,24 +78,6 @@
     }
 
 
-    public void setIndexLiveData(MutableLiveData<Integer> indexLiveData) {
-        this.indexLiveData = indexLiveData;
-    }
-
-    public MutableLiveData<Integer> getIndexLiveData() {
-        if (indexLiveData == null) {
-            indexLiveData = new MutableLiveData<>();
-            indexLiveData.setValue(3);
-        }
-        return indexLiveData;
-    }
-
-    public void setIndexLiveData(int index) {
-        if (indexLiveData == null) {
-            indexLiveData = new MutableLiveData<>();
-        }
-        indexLiveData.setValue(index);
-    }
 
     public MutableLiveData<List<HomeRootBean>> getHomeRootBeanLiveData() {
         if (homeRootBeanLiveData == null) {
diff --git a/app/src/main/java/com/application/zhangshi_app_android/ui/main/MainActivity.java b/app/src/main/java/com/application/zhangshi_app_android/ui/main/MainActivity.java
index d5c7235..9185898 100644
--- a/app/src/main/java/com/application/zhangshi_app_android/ui/main/MainActivity.java
+++ b/app/src/main/java/com/application/zhangshi_app_android/ui/main/MainActivity.java
@@ -141,7 +141,7 @@
             public void onChanged(GrowthExperienceInformationBean informationBean) {
                 if(informationBean != null){
                     UserManager.getInstance().setUserName(informationBean.getNickName());
-                    UserManager.getInstance().setUserAvatar(informationBean.getUrl());
+                    UserManager.getInstance().setUserAvatar(informationBean.getImg());
                     RxBus.getInstance().post(new MessageEvent(MessageEvent.EVENT_UPDATE_USER_INFO,informationBean));
                 }
 
diff --git a/app/src/main/java/com/application/zhangshi_app_android/ui/personal_center/PersonalCenterFragment.java b/app/src/main/java/com/application/zhangshi_app_android/ui/personal_center/PersonalCenterFragment.java
index 8fda600..ab5f4f8 100644
--- a/app/src/main/java/com/application/zhangshi_app_android/ui/personal_center/PersonalCenterFragment.java
+++ b/app/src/main/java/com/application/zhangshi_app_android/ui/personal_center/PersonalCenterFragment.java
@@ -1,28 +1,63 @@
 package com.application.zhangshi_app_android.ui.personal_center;
 
+import android.content.Context;
 import android.content.Intent;
+import android.graphics.Bitmap;
 import android.graphics.drawable.ColorDrawable;
+import android.graphics.drawable.Drawable;
+import android.net.Uri;
 import android.os.Bundle;
+import android.util.Log;
 import android.view.View;
 import android.view.ViewGroup;
+import android.widget.ImageView;
 import android.widget.PopupWindow;
+
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+import androidx.core.content.ContextCompat;
+import androidx.fragment.app.Fragment;
 
 import com.android.app_base.base.dialog.BaseDialog;
 import com.android.app_base.base.dialog.UIDialog;
+import com.android.app_base.base.dialog.WaitDialog;
 import com.android.app_base.base.view.BaseFragment;
 import com.android.app_base.manager.AppManager;
 import com.android.app_base.manager.UserManager;
+import com.android.app_base.utils.GlideEngine;
 import com.android.app_base.utils.ScreenSizeUtils;
+import com.android.app_base.utils.Utils;
 import com.android.app_base.utils.rxbus.MessageEvent;
 import com.android.app_base.utils.rxbus.RxBus;
 import com.application.zhangshi_app_android.BR;
 import com.application.zhangshi_app_android.R;
+import com.application.zhangshi_app_android.bean.AnnualHealthStatusBean;
 import com.application.zhangshi_app_android.bean.GrowthExperienceInformationBean;
 import com.application.zhangshi_app_android.databinding.FragmentPersonalCenterBinding;
 import com.application.zhangshi_app_android.ui.DLBaseFragment;
 import com.application.zhangshi_app_android.ui.dialog.PetOwnerInfoDialog;
 import com.application.zhangshi_app_android.ui.function.PetMemoActivity;
 import com.application.zhangshi_app_android.ui.login.LoginActivity;
+import com.bumptech.glide.Glide;
+import com.bumptech.glide.request.target.CustomTarget;
+import com.bumptech.glide.request.transition.Transition;
+import com.luck.picture.lib.basic.PictureSelector;
+import com.luck.picture.lib.config.SelectMimeType;
+import com.luck.picture.lib.engine.CropFileEngine;
+import com.luck.picture.lib.entity.LocalMedia;
+import com.luck.picture.lib.interfaces.OnResultCallbackListener;
+import com.luck.picture.lib.style.PictureSelectorStyle;
+import com.luck.picture.lib.style.SelectMainStyle;
+import com.luck.picture.lib.style.TitleBarStyle;
+import com.luck.picture.lib.utils.PictureFileUtils;
+import com.luck.picture.lib.utils.StyleUtils;
+import com.yalantis.ucrop.UCrop;
+import com.yalantis.ucrop.UCropImageEngine;
+import com.yalantis.ucrop.model.AspectRatio;
+
+import java.io.File;
+import java.util.ArrayList;
+import java.util.List;
 
 import io.reactivex.Observer;
 import io.reactivex.functions.Consumer;
@@ -34,6 +69,7 @@
  */
 public class PersonalCenterFragment extends DLBaseFragment<FragmentPersonalCenterBinding,PersonalCenterFragmentViewModel> {
     private PopupWindow popupWindow;
+    private BaseDialog mWaitDialog;
 
     public PersonalCenterFragment() {
     }
@@ -92,6 +128,36 @@
 
             }
         });
+        binding.ivHead.setOnClickListener(new View.OnClickListener() {
+            @Override
+            public void onClick(View v) {
+                PictureSelector.create(getSelfActivity())
+                        .openGallery(SelectMimeType.ofImage())
+                        .setImageEngine(GlideEngine.createGlideEngine())
+                        .setCropEngine(new ImageFileCropEngine())// 璁剧疆瑁佸壀寮曟搸
+                        .isMaxSelectEnabledMask(true)// 杈惧埌鏈�澶ч�夋嫨鏁版槸鍚﹀紑鍚閫夎挋灞�
+                        .setMaxSelectNum(1)
+                        .forResult(new OnResultCallbackListener<LocalMedia>() {
+                            @Override
+                            public void onResult(ArrayList<LocalMedia> result) {
+                                if (result.size() == 0) return;
+                                for (LocalMedia media : result) {
+                                    if (media.isCut()){
+                                        viewModel.updateInfo(media.getCutPath());
+                                    }else {
+                                        viewModel.updateInfo(media.getRealPath());
+                                    }
+                                }
+
+                            }
+
+                            @Override
+                            public void onCancel() {
+
+                            }
+                        });
+            }
+        });
     }
 
     @Override
@@ -128,4 +194,127 @@
     protected boolean isStatusBarImmersionEnabled() {
         return true;
     }
+
+    @Override
+    protected void dialogLoading() {
+        if (mWaitDialog == null) {
+            mWaitDialog = new WaitDialog.Builder(getSelfActivity())
+                    // 娑堟伅鏂囨湰鍙互涓嶇敤濉啓
+                    .setMessage("姝e湪涓婁紶澶村儚")
+                    .create();
+        }
+        if (!mWaitDialog.isShowing()) {
+            mWaitDialog.show();
+        }
+    }
+
+    @Override
+    protected void dialogDismiss() {
+        if (mWaitDialog != null && mWaitDialog.isShowing()) {
+            mWaitDialog.dismiss();
+            mWaitDialog = null;
+        }
+    }
+
+    /**
+     * 鑷畾涔夎鍓�
+     */
+    private class ImageFileCropEngine implements CropFileEngine {
+
+        @Override
+        public void onStartCrop(Fragment fragment, Uri srcUri, Uri destinationUri, ArrayList<String> dataSource, int requestCode) {
+            UCrop.Options options = buildOptions();
+            UCrop uCrop = UCrop.of(srcUri, destinationUri, dataSource);
+            uCrop.withOptions(options);
+            uCrop.setImageEngine(new UCropImageEngine() {
+                @Override
+                public void loadImage(Context context, String url, ImageView imageView) {
+                    Glide.with(context).load(url).override(180, 180).into(imageView);
+                }
+
+                @Override
+                public void loadImage(Context context, Uri url, int maxWidth, int maxHeight, OnCallbackListener<Bitmap> call) {
+                    Glide.with(context).asBitmap().load(url).override(maxWidth, maxHeight).into(new CustomTarget<Bitmap>() {
+                        @Override
+                        public void onResourceReady(@NonNull Bitmap resource, @Nullable Transition<? super Bitmap> transition) {
+                            if (call != null) {
+                                call.onCall(resource);
+                            }
+                        }
+
+                        @Override
+                        public void onLoadCleared(@Nullable Drawable placeholder) {
+                            if (call != null) {
+                                call.onCall(null);
+                            }
+                        }
+                    });
+                }
+            });
+            uCrop.start(fragment.requireActivity(), fragment, requestCode);
+        }
+    }
+    /**
+     * 閰嶅埗UCrop锛屽彲鏍规嵁闇�姹傝嚜鎴戞墿灞�
+     *
+     * @return
+     */
+    private UCrop.Options buildOptions() {
+        PictureSelectorStyle selectorStyle = new PictureSelectorStyle();
+
+        UCrop.Options options = new UCrop.Options();
+        options.setHideBottomControls(true);//鏄惁鏄剧ず搴曢儴瑁佸壀鑿滃崟鏍�
+        options.setFreeStyleCropEnabled(false);//瑁佸壀妗唎r鍥剧墖鎷栧姩
+        options.setShowCropFrame(true);//鏄惁鏄剧ず瑁佸壀杈规
+        options.setShowCropGrid(true);//鏄惁鏄剧ず瑁佸壀缃戞牸绾�
+        options.setCircleDimmedLayer(false);//鏄惁鍦嗗舰瑁佸壀
+        options.withAspectRatio(1, 1);//瑁佸壀姣斾緥
+        options.setAspectRatioOptions(3,
+                new AspectRatio("16:9", 16, 9),
+                new AspectRatio("3:2", 3, 2),
+                new AspectRatio("4:3", 4, 3),
+                new AspectRatio("1:1", 1, 1));//鑷�夎鍓瘮渚嬶紝鍙梥etHideBottomControls褰卞搷鍙
+        options.setCropOutputPathDir(getSandboxPath());//瑁佸壀杈撳嚭璺緞
+        options.isCropDragSmoothToCenter(false);//瑁佸壀鎷栧姩鏄惁鑷姩灞呬腑
+        options.isForbidSkipMultipleCrop(true);//鏄惁澶氬浘瑁佸壀鏃剁姝㈣烦杩�
+        options.setMaxScaleMultiplier(100);//璁剧疆鏈�澶х缉鏀炬瘮渚�
+        if (selectorStyle != null && selectorStyle.getSelectMainStyle().getStatusBarColor() != 0) {
+            SelectMainStyle mainStyle = selectorStyle.getSelectMainStyle();
+            boolean isDarkStatusBarBlack = mainStyle.isDarkStatusBarBlack();
+            int statusBarColor = mainStyle.getStatusBarColor();
+            options.isDarkStatusBarBlack(isDarkStatusBarBlack);
+            if (StyleUtils.checkStyleValidity(statusBarColor)) {
+                options.setStatusBarColor(statusBarColor);
+                options.setToolbarColor(statusBarColor);
+            } else {
+                options.setStatusBarColor(ContextCompat.getColor(getSelfActivity(), com.luck.picture.lib.R.color.ps_color_grey));
+                options.setToolbarColor(ContextCompat.getColor(getSelfActivity(), com.luck.picture.lib.R.color.ps_color_grey));
+            }
+            TitleBarStyle titleBarStyle = selectorStyle.getTitleBarStyle();
+            if (StyleUtils.checkStyleValidity(titleBarStyle.getTitleTextColor())) {
+                options.setToolbarWidgetColor(titleBarStyle.getTitleTextColor());
+            } else {
+                options.setToolbarWidgetColor(ContextCompat.getColor(getSelfActivity(), com.luck.picture.lib.R.color.ps_color_white));
+            }
+        } else {
+            options.setStatusBarColor(ContextCompat.getColor(getSelfActivity(), com.luck.picture.lib.R.color.ps_color_grey));
+            options.setToolbarColor(ContextCompat.getColor(getSelfActivity(), com.luck.picture.lib.R.color.ps_color_grey));
+            options.setToolbarWidgetColor(ContextCompat.getColor(getSelfActivity(), com.luck.picture.lib.R.color.ps_color_white));
+        }
+        return options;
+    }
+
+    /**
+     * 鍒涘缓鑷畾涔夎緭鍑虹洰褰�
+     *
+     * @return
+     */
+    private String getSandboxPath() {
+        File externalFilesDir = getSelfActivity().getExternalFilesDir("");
+        File customFile = new File(externalFilesDir.getAbsolutePath(), "Sandbox");
+        if (!customFile.exists()) {
+            customFile.mkdirs();
+        }
+        return customFile.getAbsolutePath() + File.separator;
+    }
 }
diff --git a/app/src/main/java/com/application/zhangshi_app_android/ui/personal_center/PersonalCenterFragmentViewModel.java b/app/src/main/java/com/application/zhangshi_app_android/ui/personal_center/PersonalCenterFragmentViewModel.java
index 4f0edf6..a359b70 100644
--- a/app/src/main/java/com/application/zhangshi_app_android/ui/personal_center/PersonalCenterFragmentViewModel.java
+++ b/app/src/main/java/com/application/zhangshi_app_android/ui/personal_center/PersonalCenterFragmentViewModel.java
@@ -7,14 +7,29 @@
 import androidx.annotation.NonNull;
 import androidx.lifecycle.MutableLiveData;
 
+import com.android.app_base.base.StateViewEnum;
 import com.android.app_base.base.viewmodel.BaseViewModel;
 import com.android.app_base.http.ResultData;
+import com.android.app_base.manager.UserManager;
 import com.android.app_base.utils.RxUtils;
+import com.android.app_base.utils.rxbus.MessageEvent;
+import com.android.app_base.utils.rxbus.RxBus;
+import com.application.zhangshi_app_android.bean.BannerBean;
 import com.application.zhangshi_app_android.bean.GrowthExperienceInformationBean;
+import com.application.zhangshi_app_android.bean.UploadFileResponseBean;
 import com.application.zhangshi_app_android.data.DataRepository;
 
+import java.io.File;
+
+import io.reactivex.ObservableSource;
 import io.reactivex.Observer;
 import io.reactivex.disposables.Disposable;
+import io.reactivex.functions.Action;
+import io.reactivex.functions.Consumer;
+import io.reactivex.functions.Function;
+import okhttp3.MediaType;
+import okhttp3.MultipartBody;
+import okhttp3.RequestBody;
 
 /**
  * @author Ljj
@@ -48,6 +63,12 @@
                     public void onNext(ResultData<GrowthExperienceInformationBean> data) {
                         if (data.getCode() == CODE_SUCCESS){
                             getInfoLiveData().postValue(data.getData());
+                            GrowthExperienceInformationBean informationBean = data.getData();
+                            if(informationBean != null){
+                                UserManager.getInstance().setUserName(informationBean.getNickName());
+                                UserManager.getInstance().setUserAvatar(informationBean.getImg());
+                                RxBus.getInstance().post(new MessageEvent(MessageEvent.EVENT_UPDATE_USER_INFO,informationBean));
+                            }
                         }else {
                             messageLiveData.postValue(data.getMsg());
                         }
@@ -66,6 +87,72 @@
                 });
     }
 
+    /**
+     * 淇敼涓汉淇℃伅锛堝ご鍍忥級
+     */
+    public void updateInfo(String realPath) {
+        File file = new File(realPath);
+        RequestBody requestBody = RequestBody.create(MediaType.parse("multipart/form-data"), file);
+        MultipartBody.Part body = MultipartBody.Part.createFormData("uploadFile", file.getName(), requestBody);
+        model.uploadFile(body)
+                .flatMap(new Function<ResultData<UploadFileResponseBean>, ObservableSource<ResultData<String>>>() {
+                    @Override
+                    public ObservableSource<ResultData<String>> apply(ResultData<UploadFileResponseBean> resultData) throws Exception {
+                        GrowthExperienceInformationBean bean = getInfoLiveData().getValue();
+                        if (bean == null){
+                            bean = new GrowthExperienceInformationBean();
+                        }
+                        bean.setImg(resultData.getData().getUrl());
+                        infoLiveData.postValue(bean);
+                        return model.updateGrowthExperienceInformation(bean);
+                    }
+                })
+                .compose(RxUtils.schedulersTransformer())
+                .doOnSubscribe(new Consumer<Disposable>() {
+                    @Override
+                    public void accept(Disposable disposable) throws Exception {
+                        changeStateView(StateViewEnum.DIALOG_LOADING);
+                    }
+                })
+                .doFinally(new Action() {
+                    @Override
+                    public void run() throws Exception {
+                        changeStateView(StateViewEnum.DIALOG_DISMISS);
+                    }
+                })
+                .subscribe(new Observer<ResultData<String>>() {
+                    @Override
+                    public void onSubscribe(Disposable d) {
+                        addSubscribe(d);
+                    }
+
+                    @Override
+                    public void onNext(ResultData<String> data) {
+                        if (data.getCode() == CODE_SUCCESS){
+                            messageLiveData.postValue("澶村儚宸蹭笂浼�");
+                            GrowthExperienceInformationBean informationBean = getInfoLiveData().getValue();
+                            if(informationBean != null){
+                                UserManager.getInstance().setUserName(informationBean.getNickName());
+                                UserManager.getInstance().setUserAvatar(informationBean.getUrl());
+                                RxBus.getInstance().post(new MessageEvent(MessageEvent.EVENT_UPDATE_USER_INFO,informationBean));
+                            }
+                        }else {
+                            messageLiveData.postValue(data.getMsg());
+                        }
+                    }
+
+                    @Override
+                    public void onError(Throwable e) {
+                        messageLiveData.postValue(e.getMessage());
+                    }
+
+                    @Override
+                    public void onComplete() {
+
+                    }
+                });
+    }
+
 
     public MutableLiveData<GrowthExperienceInformationBean> getInfoLiveData() {
         if (infoLiveData == null){
diff --git a/app/src/main/java/com/application/zhangshi_app_android/widget/DoubleNode.java b/app/src/main/java/com/application/zhangshi_app_android/widget/DoubleNode.java
index 5d0cf7c..7870d56 100644
--- a/app/src/main/java/com/application/zhangshi_app_android/widget/DoubleNode.java
+++ b/app/src/main/java/com/application/zhangshi_app_android/widget/DoubleNode.java
@@ -45,8 +45,8 @@
     }
 
     private void initView() {
-        memberItemView = createItemView(member);
-        spouseView = createItemView(member.getSpouse());
+        memberItemView = createItemView(member, true);
+        spouseView = createItemView(member.getSpouse(),false);
         expandIconView = createExpandIconView();
         viewList.add(memberItemView);
         viewList.add(spouseView);
diff --git a/app/src/main/java/com/application/zhangshi_app_android/widget/HomeMindMapLayout.java b/app/src/main/java/com/application/zhangshi_app_android/widget/HomeMindMapLayout.java
index b2b274d..400e797 100644
--- a/app/src/main/java/com/application/zhangshi_app_android/widget/HomeMindMapLayout.java
+++ b/app/src/main/java/com/application/zhangshi_app_android/widget/HomeMindMapLayout.java
@@ -34,16 +34,10 @@
     private Paint linePaint;
     private HomeRootBean rootMember;// 鏍硅妭鐐规垚鍛�
     private Node rootNode;// 鏍硅妭鐐�
-    private Map<HomeRootBean, View> viewMap = new HashMap<>();// 瀛樻斁鎵�鏈夎妭鐐圭殑view,璁板綍鑺傜偣鐨剉iew鏄惁宸茶addView
-
     private int width, height;// 褰撳墠甯冨眬鐨勫楂�
     private int minHeight, minWidth;// 褰撳墠甯冨眬鐨勬渶灏忓楂�
     private int padding = 100;//鍐呭鐭╁舰 涓� FrameLayout鐭╁舰 鐨刾adding
-    private static final int spouseMargin = ScreenSizeUtils.dip2px(15);// 閰嶅伓涓や釜view涔嬮棿鐨勯棿闅�
-    private final int verticalMargin = ScreenSizeUtils.dip2px(20);//    //鑺傜偣绔栫洿鏂瑰悜闂磋窛
-
-    private static final int pathLength = ScreenSizeUtils.dip2px(20);// 绾挎潯闀垮害
-
+    private OnItemClickListener onItemClickListener;// 鐐瑰嚮浜嬩欢
     public HomeMindMapLayout(@NonNull Context context) {
         this(context, null);
     }
@@ -78,8 +72,6 @@
 
     private void setRootMemberReal(HomeRootBean root) {
         this.rootMember = root;
-        // 娓呯┖viewMap
-        viewMap.clear();
         if (rootMember != null) { // 缁樺埗鏍硅妭鐐癸紝鍦ㄧ珫鐩存柟鍚戜笂灞呬腑
             if (rootMember.getSpouse() == null){
                 rootNode = new SimpleNode(getContext(),rootMember);
@@ -90,6 +82,15 @@
             //鎶婃墍鏈夎妭鐐圭殑view娣诲姞鍒皏iewGroup涓�
             addNodeView(rootNode);
             requestLayout();
+            if (onItemClickListener != null){
+                rootNode.setOnItemClickListener(onItemClickListener);
+            }
+        }
+    }
+    public void setOnItemClickListener(OnItemClickListener listener){
+        this.onItemClickListener = listener;
+        if (rootNode != null){
+            rootNode.setOnItemClickListener(onItemClickListener);
         }
     }
 
@@ -126,7 +127,6 @@
             }
         }
         setMeasuredDimension(Math.max(minWidth,width),Math.max(minHeight,height));
-
     }
 
     @Override
@@ -167,57 +167,13 @@
 
     }
 
-    private ImageView createExpandIconView() {
-        ImageView expandView = new ImageView(getContext());
-        FrameLayout.LayoutParams params = new FrameLayout.LayoutParams(pathLength,pathLength);
-        expandView.setLayoutParams(params);
-        int widthMeasureSpec = MeasureSpec.makeMeasureSpec(pathLength, MeasureSpec.EXACTLY);
-        int heightMeasureSpec = MeasureSpec.makeMeasureSpec(pathLength, MeasureSpec.EXACTLY);
-        expandView.measure(widthMeasureSpec,heightMeasureSpec);
-        return expandView;
-    }
-
-    private View createItemView(HomeRootBean member) {
-        // 浣跨敤甯冨眬濉厖鍣ㄥ姞杞借妭鐐瑰竷灞�
-        LayoutInflater inflater = LayoutInflater.from(getContext());
-        View familyMemberView = inflater.inflate(R.layout.item_family_member, null, false);
-
-        familyMemberView.measure(MeasureSpec.makeMeasureSpec((1 << 30) - 1, MeasureSpec.AT_MOST), MeasureSpec.makeMeasureSpec((1 << 30) - 1, MeasureSpec.AT_MOST));
-        // 鑾峰彇娴嬮噺鍚庣殑瀹介珮
-        int width = familyMemberView.getMeasuredWidth();
-        int height = familyMemberView.getMeasuredHeight();
-
-        // 娣诲姞鍒扮埗甯冨眬鍓嶅啀娆℃祴閲�
-        familyMemberView.measure(
-                View.MeasureSpec.makeMeasureSpec(width, View.MeasureSpec.EXACTLY),
-                View.MeasureSpec.makeMeasureSpec(height, View.MeasureSpec.EXACTLY)
-        );
-
-        if (member == null) {
-            return familyMemberView;
-        }
-
-        // 鑾峰彇甯冨眬涓殑缁勪欢
-        TextView tv_generation = familyMemberView.findViewById(R.id.tv_generation);
-        ImageFilterView iv_avatar = familyMemberView.findViewById(R.id.iv_avatar);
-        TextView tv_name = familyMemberView.findViewById(R.id.tv_name);
-
-        // 璁剧疆鑺傜偣鍐呭
-        tv_generation.setText(String.valueOf(member.getIdentity()));
-        if (member.getImg() != null) {
-            GlideUtil.loadImage(member.getImg(), iv_avatar);
-        }
-        tv_name.setText(member.getNickName());
-
-        return familyMemberView;
-    }
-
     public void setMinSize(int minWidth, int minHeight) {
         this.minWidth = minWidth;
         this.minHeight = minHeight;
     }
 
-
-
+    public interface OnItemClickListener{
+        void onItemClick(View view,HomeRootBean member);
+    }
 
 }
diff --git a/app/src/main/java/com/application/zhangshi_app_android/widget/Node.java b/app/src/main/java/com/application/zhangshi_app_android/widget/Node.java
index 1f4276f..71c81ad 100644
--- a/app/src/main/java/com/application/zhangshi_app_android/widget/Node.java
+++ b/app/src/main/java/com/application/zhangshi_app_android/widget/Node.java
@@ -1,27 +1,23 @@
 package com.application.zhangshi_app_android.widget;
 
 import android.content.Context;
+import android.graphics.Color;
 import android.graphics.Path;
-import android.graphics.drawable.ColorDrawable;
-import android.view.Gravity;
+import android.graphics.Typeface;
 import android.view.LayoutInflater;
 import android.view.View;
 import android.view.ViewGroup;
 import android.widget.FrameLayout;
 import android.widget.ImageView;
-import android.widget.PopupWindow;
 import android.widget.TextView;
 
 import androidx.constraintlayout.utils.widget.ImageFilterView;
-import androidx.databinding.DataBindingUtil;
 
 import com.android.app_base.manager.AppManager;
 import com.android.app_base.utils.GlideUtil;
 import com.android.app_base.utils.ScreenSizeUtils;
 import com.application.zhangshi_app_android.R;
 import com.application.zhangshi_app_android.bean.HomeRootBean;
-import com.application.zhangshi_app_android.databinding.PopBasicInformationBinding;
-import com.otaliastudios.zoom.ZoomLayout;
 
 import java.util.ArrayList;
 import java.util.LinkedList;
@@ -38,7 +34,7 @@
     protected HomeRootBean member;//鎴愬憳
     protected Node parent;//鐖惰妭鐐�
     protected final List<Node> children = new ArrayList<>(); //瀛愯妭鐐�
-
+    protected HomeMindMapLayout.OnItemClickListener onItemClickListener;
     protected static final int pathLength = ScreenSizeUtils.dip2px(20);// 杩炵嚎鐨勪竴鑸暱搴�
     protected static final int  cornerRadius = ScreenSizeUtils.dip2px(5); // 杩炵嚎鎷愯 鍦嗚鍗婂緞
 
@@ -69,7 +65,6 @@
         if (member != null) {
             // 閫掑綊鍒涘缓瀛愯妭鐐�
             if (member.getChildList() != null && member.getChildList().size() > 0) {
-                // 鎵�鏈夊彲瑙佺殑瀛愯妭鐐归渶瑕佺殑瀹介珮鎬诲拰
                 for (HomeRootBean child : member.getChildList()) {
                     // 鏍规嵁鏄惁鏈夐厤鍋跺垱寤轰笉鍚岀殑鑺傜偣
                     if (child != null) {
@@ -196,7 +191,13 @@
     protected abstract void setViewPosition(int x, int centerY);
     protected abstract void setForkYList(List<Integer> yList);
 
-    protected View createItemView(HomeRootBean bean) {
+    /**
+     *  鍒涘缓鑺傜偣item瑙嗗浘
+     * @param bean 鑺傜偣鏁版嵁
+     * @param isFamily 鏄惁鏄湰瀹舵垚鍛�
+     * @return 鑺傜偣item瑙嗗浘
+     */
+    protected View createItemView(HomeRootBean bean,boolean isFamily){
         // 浣跨敤甯冨眬濉厖鍣ㄥ姞杞借妭鐐瑰竷灞�
         LayoutInflater inflater = LayoutInflater.from(context);
         View familyMemberView = inflater.inflate(R.layout.item_family_member, null, false);
@@ -215,6 +216,10 @@
         ImageFilterView iv_avatar = familyMemberView.findViewById(R.id.iv_avatar);
         TextView tv_name = familyMemberView.findViewById(R.id.tv_name);
 
+        if (!isFamily){
+            tv_name.setTextColor(Color.parseColor("#FF8296C5"));
+            tv_name.setTypeface(Typeface.DEFAULT);
+        }
         // 璁剧疆鑺傜偣鍐呭
         tv_generation.setText(String.valueOf(bean.getIdentity()));
         if (bean.getImg() != null) {
@@ -225,30 +230,9 @@
         familyMemberView.setOnClickListener(new View.OnClickListener() {
             @Override
             public void onClick(View v) {
-                PopBasicInformationBinding mBinding= DataBindingUtil.inflate(inflater,R.layout.pop_basic_information,null,false);
-                PopupWindow popupWindow = new PopupWindow();
-                // 璁剧疆甯冨眬鏂囦欢
-                popupWindow.setContentView(mBinding.getRoot());
-                // 涓轰簡閬垮厤閮ㄥ垎鏈哄瀷涓嶆樉绀猴紝闇�瑕侀噸鏂拌缃竴涓嬪楂�
-                popupWindow.setWidth(ViewGroup.LayoutParams.WRAP_CONTENT);
-                popupWindow.setHeight(ViewGroup.LayoutParams.WRAP_CONTENT);
-                // 璁剧疆pop閫忔槑鏁堟灉
-                popupWindow.setBackgroundDrawable(new ColorDrawable(0x0000));
-                // 璁剧疆pop鍑哄叆鍔ㄧ敾
-                popupWindow.setAnimationStyle(com.android.app_base.R.style.pop_operate);
-                // 璁剧疆pop鑾峰彇鐒︾偣锛屽鏋滀负false鐐瑰嚮杩斿洖鎸夐挳浼氶��鍑哄綋鍓岮ctivity锛屽鏋減op涓湁Editor鐨勮瘽锛宖ocusable蹇呴』瑕佷负true
-                popupWindow.setFocusable(true);
-                // 璁剧疆pop鍙偣鍑伙紝涓篺alse鐐瑰嚮浜嬩欢鏃犳晥锛岄粯璁や负true
-                popupWindow.setTouchable(true);
-                // 璁剧疆鐐瑰嚮pop澶栦晶娑堝け锛岄粯璁や负false锛涘湪focusable涓簍rue鏃剁偣鍑诲渚у缁堟秷澶�
-                popupWindow.setOutsideTouchable(false);
-
-                mBinding.setSelfBean(bean);
-                mBinding.setSpouseBean(bean.getSpouse());
-                ZoomLayout zoomLayout = (ZoomLayout) familyMemberView.getParent().getParent();
-                popupWindow.setHeight(zoomLayout.getHeight());
-                popupWindow.setWidth(zoomLayout.getWidth());
-                popupWindow.showAtLocation((View) familyMemberView.getParent().getParent(), Gravity.BOTTOM,0,0);
+                if (onItemClickListener != null){
+                    onItemClickListener.onItemClick(familyMemberView,bean);
+                }
             }
         });
         return familyMemberView;
@@ -485,12 +469,12 @@
 
     // 鑾峰彇 姣忎釜 itemView 鐨勫搴�
     public int getItemViewWidth(){
-        View itemView =  createItemView(null);
+        View itemView =  createItemView(null,false);
         return itemView.getMeasuredWidth();
     }
     // 鑾峰彇 姣忎釜 itemView 鐨勯珮搴�
     public int getItemViewHeight(){
-        View itemView =  createItemView(null);
+        View itemView =  createItemView(null,false);
         return itemView.getMeasuredHeight();
     }
     //鑾峰彇灞曞紑鎸夐挳鐨勫搴�
@@ -503,4 +487,12 @@
     public int getViewWidth(){
         return viewBottom - viewTop;
     }
+
+    public void setOnItemClickListener(HomeMindMapLayout.OnItemClickListener onItemClickListener) {
+        this.onItemClickListener = onItemClickListener;
+        //鎵�鏈夌殑瀛愯妭鐐逛篃璁剧疆
+        for (Node child : children) {
+            child.setOnItemClickListener(onItemClickListener);
+        }
+    }
 }
diff --git a/app/src/main/java/com/application/zhangshi_app_android/widget/SimpleNode.java b/app/src/main/java/com/application/zhangshi_app_android/widget/SimpleNode.java
index db8e734..c19a3db 100644
--- a/app/src/main/java/com/application/zhangshi_app_android/widget/SimpleNode.java
+++ b/app/src/main/java/com/application/zhangshi_app_android/widget/SimpleNode.java
@@ -42,7 +42,7 @@
     }
 
     private void initView() {
-        memberItemView = createItemView(member);
+        memberItemView = createItemView(member,true);
         expandIconView = createExpandIconView();
         viewList.add(memberItemView);
         viewList.add(expandIconView);
diff --git a/app/src/main/res/drawable-xhdpi/bg_home_root.png b/app/src/main/res/drawable-xhdpi/bg_home_root.png
new file mode 100644
index 0000000..745af55
--- /dev/null
+++ b/app/src/main/res/drawable-xhdpi/bg_home_root.png
Binary files differ
diff --git a/app/src/main/res/drawable-xhdpi/ic_camera.png b/app/src/main/res/drawable-xhdpi/ic_camera.png
new file mode 100644
index 0000000..2ae4e0f
--- /dev/null
+++ b/app/src/main/res/drawable-xhdpi/ic_camera.png
Binary files differ
diff --git a/app/src/main/res/drawable-xxhdpi/bg_home_root.png b/app/src/main/res/drawable-xxhdpi/bg_home_root.png
new file mode 100644
index 0000000..15c155f
--- /dev/null
+++ b/app/src/main/res/drawable-xxhdpi/bg_home_root.png
Binary files differ
diff --git a/app/src/main/res/drawable-xxhdpi/ic_camera.png b/app/src/main/res/drawable-xxhdpi/ic_camera.png
new file mode 100644
index 0000000..9e78179
--- /dev/null
+++ b/app/src/main/res/drawable-xxhdpi/ic_camera.png
Binary files differ
diff --git a/app/src/main/res/layout/activity_health_care.xml b/app/src/main/res/layout/activity_health_care.xml
index 379a19d..7d5bb4d 100644
--- a/app/src/main/res/layout/activity_health_care.xml
+++ b/app/src/main/res/layout/activity_health_care.xml
@@ -1764,6 +1764,7 @@
                     android:layout_marginTop="10dp"
                     app:cardCornerRadius="10dp"
                     app:cardElevation="2dp"
+                    app:cardBackgroundColor="@color/white"
                     tools:layout_height="wrap_content"
                     >
                     <LinearLayout
@@ -2605,6 +2606,7 @@
                     android:layout_marginTop="10dp"
                     app:cardCornerRadius="10dp"
                     app:cardElevation="2dp"
+                    app:cardBackgroundColor="@color/white"
                     tools:layout_height="wrap_content"
                     >
                     <LinearLayout
diff --git a/app/src/main/res/layout/activity_home_devices_detail.xml b/app/src/main/res/layout/activity_home_devices_detail.xml
index f49dd24..5120b2f 100644
--- a/app/src/main/res/layout/activity_home_devices_detail.xml
+++ b/app/src/main/res/layout/activity_home_devices_detail.xml
@@ -20,7 +20,7 @@
             android:id="@+id/titleBar"
             android:layout_width="match_parent"
             android:layout_height="wrap_content"
-            app:title="@{viewModel.beanLiveData.id!=0?viewModel.beanLiveData.name:`娣诲姞璁惧`}"
+            app:title="@{viewModel.beanLiveData.id!=0?viewModel.beanLiveData.name:`娣诲姞瀹跺涵璁惧`}"
             app:titleGravity="left"
             >
             <FrameLayout
diff --git a/app/src/main/res/layout/activity_little_doctor_detail.xml b/app/src/main/res/layout/activity_little_doctor_detail.xml
index c19652a..dffe5f4 100644
--- a/app/src/main/res/layout/activity_little_doctor_detail.xml
+++ b/app/src/main/res/layout/activity_little_doctor_detail.xml
@@ -19,7 +19,7 @@
             android:id="@+id/titleBar"
             android:layout_width="match_parent"
             android:layout_height="wrap_content"
-            app:title="@{viewModel.beanLiveData.symptom}"
+            app:title="@{viewModel.beanLiveData.id!=0?viewModel.beanLiveData.symptom:`鏂板灏忓尰鐢焋}"
             app:titleGravity="left"
             >
             <FrameLayout
diff --git a/app/src/main/res/layout/activity_login.xml b/app/src/main/res/layout/activity_login.xml
index b68a9b7..75361b6 100644
--- a/app/src/main/res/layout/activity_login.xml
+++ b/app/src/main/res/layout/activity_login.xml
@@ -39,6 +39,7 @@
                 android:layout_marginTop="-20dp"
                 app:cardCornerRadius="15dp"
                 app:cardElevation="0dp"
+                app:cardBackgroundColor="@color/white"
                 app:layout_constraintEnd_toEndOf="parent"
                 app:layout_constraintStart_toStartOf="parent"
                 app:layout_constraintTop_toBottomOf="@+id/iv_bg_home">
diff --git a/app/src/main/res/layout/activity_marriage.xml b/app/src/main/res/layout/activity_marriage.xml
index 50a9d08..ae01890 100644
--- a/app/src/main/res/layout/activity_marriage.xml
+++ b/app/src/main/res/layout/activity_marriage.xml
@@ -377,6 +377,7 @@
                     android:layout_marginHorizontal="14dp"
                     app:cardCornerRadius="10dp"
                     app:cardElevation="3dp"
+                    app:cardBackgroundColor="@color/white"
                     tools:layout_height="wrap_content"
                     >
                     <LinearLayout
@@ -573,6 +574,7 @@
                     android:layout_marginTop="10dp"
                     app:cardCornerRadius="10dp"
                     app:cardElevation="2dp"
+                    app:cardBackgroundColor="@color/white"
                     tools:layout_height="wrap_content"
                     >
                     <LinearLayout
@@ -633,6 +635,7 @@
                     android:layout_marginTop="10dp"
                     app:cardCornerRadius="10dp"
                     app:cardElevation="2dp"
+                    app:cardBackgroundColor="@color/white"
                     tools:layout_height="wrap_content"
                     >
                     <LinearLayout
diff --git a/app/src/main/res/layout/activity_property.xml b/app/src/main/res/layout/activity_property.xml
index 29fc0cd..4760a0a 100644
--- a/app/src/main/res/layout/activity_property.xml
+++ b/app/src/main/res/layout/activity_property.xml
@@ -387,6 +387,98 @@
                         />
 
                 </LinearLayout>
+                <View
+                    android:layout_width="match_parent"
+                    android:layout_height="0.3dp"
+                    android:background="#FF939393" />
+
+                <LinearLayout
+                    android:layout_width="match_parent"
+                    android:layout_height="40dp"
+                    android:gravity="center">
+
+                    <androidx.appcompat.widget.AppCompatTextView
+                        android:layout_width="0dp"
+                        android:layout_weight="1"
+                        android:layout_height="match_parent"
+                        android:text="鍙樻洿娉ㄩ攢"
+                        android:textColor="#FF333333"
+                        android:textSize="14sp"
+                        android:gravity="center"
+                        android:maxLines="1"
+                        app:autoSizeTextType="uniform"
+                        app:autoSizeMinTextSize="10sp"
+                        app:autoSizeMaxTextSize="14sp"
+                        />
+
+                    <com.android.app_base.widget.ClearEditText
+                        android:id="@+id/et_is_change"
+                        android:layout_width="0dp"
+                        android:layout_weight="4"
+                        android:layout_height="wrap_content"
+                        android:background="@null"
+                        android:inputType="text"
+                        android:layout_marginStart="6dp"
+                        android:text="@={viewModel.requestBeanLiveData.isChange}"
+                        android:hint="璇烽�夋嫨鍙樻洿鎴栨敞閿�"
+                        android:textColorHint="#61000000"
+                        android:textColor="#FF333333"
+                        android:textSize="14sp"
+                        android:maxLines="1"
+                        app:autoSizeTextType="uniform"
+                        app:autoSizeMinTextSize="10sp"
+                        app:autoSizeMaxTextSize="14sp"
+                        app:background="@drawable/ic_clear"
+                        app:isEditable="@{false}"
+                        />
+
+                </LinearLayout>
+                <View
+                    android:layout_width="match_parent"
+                    android:layout_height="0.3dp"
+                    android:background="#FF939393" />
+
+                <LinearLayout
+                    android:layout_width="match_parent"
+                    android:layout_height="40dp"
+                    android:gravity="center">
+
+                    <androidx.appcompat.widget.AppCompatTextView
+                        android:layout_width="0dp"
+                        android:layout_weight="1"
+                        android:layout_height="match_parent"
+                        android:text="鏄惁娉ㄩ攢"
+                        android:textColor="#FF333333"
+                        android:textSize="14sp"
+                        android:gravity="center"
+                        android:maxLines="1"
+                        app:autoSizeTextType="uniform"
+                        app:autoSizeMinTextSize="10sp"
+                        app:autoSizeMaxTextSize="14sp"
+                        />
+
+                    <com.android.app_base.widget.ClearEditText
+                        android:id="@+id/et_is_logout"
+                        android:layout_width="0dp"
+                        android:layout_weight="4"
+                        android:layout_height="wrap_content"
+                        android:background="@null"
+                        android:inputType="text"
+                        android:layout_marginStart="6dp"
+                        android:text="@={viewModel.requestBeanLiveData.statusStr}"
+                        android:hint="璇烽�夋嫨鏄惁娉ㄩ攢"
+                        android:textColorHint="#61000000"
+                        android:textColor="#FF333333"
+                        android:textSize="14sp"
+                        android:maxLines="1"
+                        app:autoSizeTextType="uniform"
+                        app:autoSizeMinTextSize="10sp"
+                        app:autoSizeMaxTextSize="14sp"
+                        app:background="@drawable/ic_clear"
+                        app:isEditable="@{false}"
+                        />
+
+                </LinearLayout>
             </LinearLayout>
 
         </RelativeLayout>
diff --git a/app/src/main/res/layout/dialog_toatal_add.xml b/app/src/main/res/layout/dialog_toatal_add.xml
new file mode 100644
index 0000000..2ed5aa6
--- /dev/null
+++ b/app/src/main/res/layout/dialog_toatal_add.xml
@@ -0,0 +1,272 @@
+<?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">
+
+    <data>
+
+    </data>
+
+    <androidx.cardview.widget.CardView
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        app:cardBackgroundColor="#FFFFFCFC"
+        app:cardCornerRadius="5dp"
+        android:layout_marginHorizontal="45dp"
+        android:layout_marginVertical="10dp"
+        >
+
+        <ImageView
+            android:id="@+id/iv_dialog_close"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:layout_marginTop="15dp"
+            android:layout_marginEnd="15dp"
+            android:layout_gravity="end"
+            android:background="@drawable/ic_dialog_close" />
+
+        <androidx.constraintlayout.widget.ConstraintLayout
+            android:layout_width="match_parent"
+            android:layout_height="wrap_content"
+            android:layout_marginBottom="20dp"
+            android:layout_marginTop="40dp"
+            android:orientation="vertical"
+            android:gravity="center_horizontal">
+
+            <TextView
+                android:id="@+id/tv_title"
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:text="璇烽�夋嫨闇�瑕佹柊澧炴潯鐩殑妯″潡"
+                android:textColor="#FF333333"
+                android:textSize="18sp"
+                app:layout_constraintTop_toTopOf="parent"
+                app:layout_constraintStart_toStartOf="parent"
+                app:layout_constraintEnd_toEndOf="parent" />
+
+            <LinearLayout
+                android:id="@+id/layout_family_memorabilia"
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_marginTop="16dp"
+                app:layout_constraintTop_toBottomOf="@id/tv_title"
+                app:layout_constraintStart_toStartOf="parent"
+                app:layout_constraintEnd_toEndOf="parent"
+                app:layout_constraintHorizontal_bias="0.4"
+                >
+
+                <ImageView
+                    android:layout_width="18dp"
+                    android:layout_height="18dp"
+                    android:src="@drawable/function_notes"
+                    android:layout_gravity="center_vertical" />
+
+                <TextView
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:text="瀹跺ぇ浜嬭"
+                    android:textColor="#FF333333"
+                    android:textSize="16sp"
+                    android:layout_marginStart="20dp" />
+            </LinearLayout>
+
+            <View
+                android:layout_width="match_parent"
+                android:layout_height="1dp"
+                android:background="#FFF3F3F3"
+                android:layout_marginTop="8dp"
+                android:layout_marginHorizontal="15dp"
+                app:layout_constraintTop_toBottomOf="@id/layout_family_memorabilia" />
+
+            <LinearLayout
+                android:id="@+id/layout_home_devices"
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_marginTop="16dp"
+                app:layout_constraintTop_toBottomOf="@id/layout_family_memorabilia"
+                app:layout_constraintStart_toStartOf="@id/layout_family_memorabilia">
+
+                <ImageView
+                    android:layout_width="18dp"
+                    android:layout_height="18dp"
+                    android:src="@drawable/function_home_devices"
+                    android:layout_gravity="center_vertical" />
+
+                <TextView
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:text="瀹跺涵璁惧"
+                    android:textColor="#FF333333"
+                    android:textSize="16sp"
+                    android:layout_marginStart="20dp" />
+            </LinearLayout>
+
+            <View
+                android:layout_width="match_parent"
+                android:layout_height="1dp"
+                android:background="#FFF3F3F3"
+                android:layout_marginTop="8dp"
+                android:layout_marginHorizontal="15dp"
+                app:layout_constraintTop_toBottomOf="@id/layout_home_devices" />
+
+            <LinearLayout
+                android:id="@+id/layout_little_doctor"
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_marginTop="16dp"
+                app:layout_constraintTop_toBottomOf="@id/layout_home_devices"
+                app:layout_constraintStart_toStartOf="@id/layout_family_memorabilia">
+
+                <ImageView
+                    android:layout_width="18dp"
+                    android:layout_height="18dp"
+                    android:src="@drawable/function_little_doctor"
+                    android:layout_gravity="center_vertical" />
+
+                <TextView
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:text="灏忓尰鐢�"
+                    android:textColor="#FF333333"
+                    android:textSize="16sp"
+                    android:layout_marginStart="20dp" />
+            </LinearLayout>
+
+            <View
+                android:layout_width="match_parent"
+                android:layout_height="1dp"
+                android:background="#FFF3F3F3"
+                android:layout_marginTop="8dp"
+                android:layout_marginHorizontal="15dp"
+                app:layout_constraintTop_toBottomOf="@id/layout_little_doctor" />
+
+            <LinearLayout
+                android:id="@+id/layout_clean_storage"
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_marginTop="16dp"
+                app:layout_constraintTop_toBottomOf="@id/layout_little_doctor"
+                app:layout_constraintStart_toStartOf="@id/layout_family_memorabilia">
+
+                <ImageView
+                    android:layout_width="18dp"
+                    android:layout_height="18dp"
+                    android:src="@drawable/function_cleaning"
+                    android:layout_gravity="center_vertical" />
+
+                <TextView
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:text="淇濇磥鏀剁撼"
+                    android:textColor="#FF333333"
+                    android:textSize="16sp"
+                    android:layout_marginStart="20dp" />
+            </LinearLayout>
+
+            <View
+                android:layout_width="match_parent"
+                android:layout_height="1dp"
+                android:background="#FFF3F3F3"
+                android:layout_marginTop="8dp"
+                android:layout_marginHorizontal="15dp"
+                app:layout_constraintTop_toBottomOf="@id/layout_clean_storage" />
+
+            <LinearLayout
+                android:id="@+id/layout_income_and_expenses"
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_marginTop="16dp"
+                app:layout_constraintTop_toBottomOf="@id/layout_clean_storage"
+                app:layout_constraintStart_toStartOf="@id/layout_family_memorabilia">
+
+                <ImageView
+                    android:layout_width="18dp"
+                    android:layout_height="18dp"
+                    android:src="@drawable/function_income_expense"
+                    android:layout_gravity="center_vertical" />
+
+                <TextView
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:text="瀹跺涵鏀舵敮鍙拌处"
+                    android:textColor="#FF333333"
+                    android:textSize="16sp"
+                    android:layout_marginStart="20dp" />
+            </LinearLayout>
+
+            <View
+                android:layout_width="match_parent"
+                android:layout_height="1dp"
+                android:background="#FFF3F3F3"
+                android:layout_marginTop="8dp"
+                android:layout_marginHorizontal="15dp"
+                app:layout_constraintTop_toBottomOf="@id/layout_income_and_expenses" />
+
+
+
+            <LinearLayout
+                android:id="@+id/layout_health_care"
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_marginTop="16dp"
+                app:layout_constraintTop_toBottomOf="@id/layout_income_and_expenses"
+                app:layout_constraintStart_toStartOf="@id/layout_family_memorabilia">
+
+                <ImageView
+                    android:layout_width="18dp"
+                    android:layout_height="18dp"
+                    android:src="@drawable/function_health"
+                    android:layout_gravity="center_vertical" />
+
+                <TextView
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:text="鍋ュ悍淇濆仴"
+                    android:textColor="#FF333333"
+                    android:textSize="16sp"
+                    android:layout_marginStart="20dp" />
+            </LinearLayout>
+
+            <View
+                android:layout_width="match_parent"
+                android:layout_height="1dp"
+                android:background="#FFF3F3F3"
+                android:layout_marginTop="8dp"
+                android:layout_marginHorizontal="15dp"
+                app:layout_constraintTop_toBottomOf="@id/layout_health_care" />
+
+            <LinearLayout
+                android:id="@+id/layout_tourism"
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_marginTop="16dp"
+                app:layout_constraintTop_toBottomOf="@id/layout_health_care"
+                app:layout_constraintStart_toStartOf="@id/layout_family_memorabilia">
+
+                <ImageView
+                    android:layout_width="18dp"
+                    android:layout_height="18dp"
+                    android:src="@drawable/function_tour"
+                    android:layout_gravity="center_vertical" />
+
+                <TextView
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:text="鏃呮父"
+                    android:textColor="#FF333333"
+                    android:textSize="16sp"
+                    android:layout_marginStart="20dp" />
+            </LinearLayout>
+
+            <View
+                android:layout_width="match_parent"
+                android:layout_height="1dp"
+                android:background="#FFF3F3F3"
+                android:layout_marginTop="8dp"
+                android:layout_marginHorizontal="15dp"
+                app:layout_constraintTop_toBottomOf="@id/layout_tourism" />
+
+
+        </androidx.constraintlayout.widget.ConstraintLayout>
+
+    </androidx.cardview.widget.CardView>
+</layout>
diff --git a/app/src/main/res/layout/fragment_function.xml b/app/src/main/res/layout/fragment_function.xml
index 1894dab..3bdd176 100644
--- a/app/src/main/res/layout/fragment_function.xml
+++ b/app/src/main/res/layout/fragment_function.xml
@@ -73,7 +73,8 @@
             </FrameLayout>
         </FrameLayout>
 
-        <LinearLayout
+        <FrameLayout
+            android:id="@+id/container"
             android:layout_width="match_parent"
             android:layout_height="0dp"
             android:orientation="vertical"
@@ -573,11 +574,18 @@
 
                 </androidx.constraintlayout.widget.ConstraintLayout>
             </androidx.core.widget.NestedScrollView>
+            <com.google.android.material.floatingactionbutton.FloatingActionButton
+                android:id="@+id/fab_add"
+                android:layout_width="56dp"
+                android:layout_height="56dp"
+                android:layout_gravity="end | bottom"
+                android:layout_marginEnd="25dp"
+                android:layout_marginBottom="44dp"
+                android:src="@drawable/ic_add"
+                app:fabCustomSize="56dp"
+                />
 
-        </LinearLayout>
-
-
-
+        </FrameLayout>
 
     </androidx.constraintlayout.widget.ConstraintLayout>
 </layout>
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_home.xml b/app/src/main/res/layout/fragment_home.xml
index 75e8a1f..be0ed04 100644
--- a/app/src/main/res/layout/fragment_home.xml
+++ b/app/src/main/res/layout/fragment_home.xml
@@ -38,1210 +38,42 @@
             </FrameLayout>
         </com.android.app_base.widget.ExtendTitleBar>
 
-
-        <androidx.constraintlayout.widget.ConstraintLayout
+        <com.otaliastudios.zoom.ZoomLayout
+            android:id="@+id/zoomLayout"
             android:layout_width="match_parent"
-            android:layout_height="match_parent"
-            android:id="@+id/layout_parent"
+            android:layout_height="0dp"
+            android:layout_weight="1"
+            android:scrollbars="vertical|horizontal"
+            app:transformation="centerInside"
+            app:transformationGravity="auto"
+            app:alignment="center"
+            app:overScrollHorizontal="true"
+            app:overScrollVertical="true"
+            app:overPinchable="true"
+            app:horizontalPanEnabled="true"
+            app:verticalPanEnabled="true"
+            app:zoomEnabled="true"
+            app:flingEnabled="true"
+            app:scrollEnabled="true"
+            app:oneFingerScrollEnabled="true"
+            app:twoFingersScrollEnabled="true"
+            app:threeFingersScrollEnabled="true"
+            app:minZoom="1"
+            app:minZoomType="zoom"
+            app:maxZoom="2.5"
+            app:maxZoomType="realZoom"
+            app:animationDuration="280"
+            app:hasClickableChildren="true"
+            android:background="@color/color_normal_background"
             >
-            <androidx.constraintlayout.widget.ConstraintLayout
-                android:id="@+id/layout_home_root_net"
-                android:layout_width="match_parent"
-                android:layout_height="match_parent"
-                tools:visibility="gone"
-                >
-                <ImageView
-                    android:id="@+id/iv_treeView"
-                    android:layout_width="match_parent"
-                    android:layout_height="0dp"
-                    app:layout_constraintDimensionRatio="360:417"
-                    android:background="@drawable/bg_home_root_net"
-                    app:layout_constraintBottom_toBottomOf="parent" />
 
-                <ImageView
-                    android:layout_width="match_parent"
-                    android:layout_height="0dp"
-                    android:background="@drawable/bg_home_root_net_grass"
-                    app:layout_constraintBottom_toBottomOf="@id/iv_treeView"
-                    app:layout_constraintDimensionRatio="350:217"
-                    android:layout_marginBottom="-56dp"
-                    />
-
-            </androidx.constraintlayout.widget.ConstraintLayout>
-
-            <HorizontalScrollView
-                android:id="@+id/scrollView"
+            <com.application.zhangshi_app_android.widget.HomeMindMapLayout
+                android:id="@+id/scrollHomeMindMapLayout"
                 android:layout_width="wrap_content"
-                android:layout_height="match_parent"
-                app:layout_constraintStart_toStartOf="parent"
-                app:layout_constraintTop_toTopOf="parent"
-                android:orientation="horizontal"
-                android:visibility="gone"
-                tools:visibility="visible"
-                >
-                <androidx.constraintlayout.widget.ConstraintLayout
-                    android:layout_width="wrap_content"
-                    android:layout_height="match_parent"
-                    >
+                android:layout_height="wrap_content"
+                />
 
-                    <ImageView
-                        android:id="@+id/iv_treeView_diff"
-                        android:layout_width="0dp"
-                        android:layout_height="match_parent"
-                        android:background="@drawable/bg_home_root_net_detail"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        app:layout_constraintDimensionRatio="676:505"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintHorizontal_bias="1.0"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintVertical_bias="0.0" />
+        </com.otaliastudios.zoom.ZoomLayout>
 
-                    <androidx.constraintlayout.utils.widget.ImageFilterView
-                        android:id="@+id/iv_first_1"
-                        android:layout_width="0dp"
-                        android:layout_height="0dp"
-                        android:background="@drawable/img_sakura"
-                        app:roundPercent="1"
-                        app:layout_constraintDimensionRatio="1"
-                        app:layout_constraintHeight_percent="0.07"
-                        app:layout_constraintHorizontal_bias="0.44"
-                        app:layout_constraintVertical_bias="0.795"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        />
-                    <TextView
-                        android:id="@+id/tv_first_1"
-                        android:layout_width="wrap_content"
-                        android:layout_height="wrap_content"
-                        android:textSize="30sp"
-                        android:text="1"
-                        android:fontFamily="@font/cookie_regular"
-                        android:textColor="#FF386C19"
-                        app:layout_constraintHorizontal_bias="0.435"
-                        app:layout_constraintVertical_bias="0.795"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        />
-                    <androidx.constraintlayout.utils.widget.ImageFilterView
-                        android:id="@+id/iv_first_2"
-                        android:layout_width="0dp"
-                        android:layout_height="0dp"
-                        android:background="@drawable/img_sakura"
-                        app:roundPercent="1"
-                        app:layout_constraintDimensionRatio="1"
-                        app:layout_constraintHeight_percent="0.08"
-                        app:layout_constraintHorizontal_bias="0.485"
-                        app:layout_constraintVertical_bias="0.887"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        />
-                    <TextView
-                        android:id="@+id/tv_first_2"
-                        android:layout_width="wrap_content"
-                        android:layout_height="wrap_content"
-                        android:textSize="30sp"
-                        android:text="1"
-                        android:fontFamily="@font/cookie_regular"
-                        android:textColor="#FF386C19"
-                        app:layout_constraintHorizontal_bias="0.485"
-                        app:layout_constraintVertical_bias="0.88"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        />
-                    <androidx.constraintlayout.utils.widget.ImageFilterView
-                        android:id="@+id/iv_second_1_1"
-                        android:layout_width="0dp"
-                        android:layout_height="0dp"
-                        android:background="@drawable/img_sakura"
-                        app:roundPercent="1"
-                        app:layout_constraintDimensionRatio="1"
-                        app:layout_constraintHeight_percent="0.060"
-                        app:layout_constraintHorizontal_bias="0.365"
-                        app:layout_constraintVertical_bias="0.65"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        />
-                    <TextView
-                        android:id="@+id/tv_second_1_1"
-                        android:layout_width="wrap_content"
-                        android:layout_height="wrap_content"
-                        android:textSize="30sp"
-                        android:text="2"
-                        android:fontFamily="@font/cookie_regular"
-                        android:textColor="#FF93CD91"
-                        app:layout_constraintHorizontal_bias="0.395"
-                        app:layout_constraintVertical_bias="0.68"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        />
-                    <androidx.constraintlayout.utils.widget.ImageFilterView
-                        android:id="@+id/iv_second_1_2"
-                        android:layout_width="0dp"
-                        android:layout_height="0dp"
-                        android:background="@drawable/img_sakura"
-                        app:roundPercent="1"
-                        app:layout_constraintDimensionRatio="1"
-                        app:layout_constraintHeight_percent="0.055"
-                        app:layout_constraintHorizontal_bias="0.29"
-                        app:layout_constraintVertical_bias="0.655"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        />
-                    <TextView
-                        android:id="@+id/tv_second_1_2"
-                        android:layout_width="wrap_content"
-                        android:layout_height="wrap_content"
-                        android:textSize="24sp"
-                        android:text="2"
-                        android:fontFamily="@font/cookie_regular"
-                        android:textColor="#FF93CD91"
-                        app:layout_constraintHorizontal_bias="0.325"
-                        app:layout_constraintVertical_bias="0.65"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        />
-                    <androidx.constraintlayout.utils.widget.ImageFilterView
-                        android:id="@+id/iv_second_2_1"
-                        android:layout_width="0dp"
-                        android:layout_height="0dp"
-                        android:background="@drawable/img_sakura"
-                        app:roundPercent="1"
-                        app:layout_constraintDimensionRatio="1"
-                        app:layout_constraintHeight_percent="0.065"
-                        app:layout_constraintHorizontal_bias="0.425"
-                        app:layout_constraintVertical_bias="0.585"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        />
-                    <TextView
-                        android:id="@+id/tv_second_2_1"
-                        android:layout_width="wrap_content"
-                        android:layout_height="wrap_content"
-                        android:textSize="30sp"
-                        android:text="2"
-                        android:fontFamily="@font/cookie_regular"
-                        android:textColor="#FF93CD91"
-                        app:layout_constraintHorizontal_bias="0.455"
-                        app:layout_constraintVertical_bias="0.62"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        />
-                    <androidx.constraintlayout.utils.widget.ImageFilterView
-                        android:id="@+id/iv_second_2_2"
-                        android:layout_width="0dp"
-                        android:layout_height="0dp"
-                        android:background="@drawable/img_sakura"
-                        app:roundPercent="1"
-                        app:layout_constraintDimensionRatio="1"
-                        app:layout_constraintHeight_percent="0.055"
-                        app:layout_constraintHorizontal_bias="0.37"
-                        app:layout_constraintVertical_bias="0.52"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        />
-                    <TextView
-                        android:id="@+id/tv_second_2_2"
-                        android:layout_width="wrap_content"
-                        android:layout_height="wrap_content"
-                        android:textSize="24sp"
-                        android:text="2"
-                        android:fontFamily="@font/cookie_regular"
-                        android:textColor="#FF93CD91"
-                        app:layout_constraintHorizontal_bias="0.4"
-                        app:layout_constraintVertical_bias="0.53"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        />
-                    <androidx.constraintlayout.utils.widget.ImageFilterView
-                        android:id="@+id/iv_second_3_1"
-                        android:layout_width="0dp"
-                        android:layout_height="0dp"
-                        android:background="@drawable/img_sakura"
-                        app:roundPercent="1"
-                        app:layout_constraintDimensionRatio="1"
-                        app:layout_constraintHeight_percent="0.063"
-                        app:layout_constraintHorizontal_bias="0.525"
-                        app:layout_constraintVertical_bias="0.58"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        />
-                    <TextView
-                        android:id="@+id/tv_second_3_1"
-                        android:layout_width="wrap_content"
-                        android:layout_height="wrap_content"
-                        android:textSize="30sp"
-                        android:text="2"
-                        android:fontFamily="@font/cookie_regular"
-                        android:textColor="#FF93CD91"
-                        app:layout_constraintHorizontal_bias="0.515"
-                        app:layout_constraintVertical_bias="0.63"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        />
-                    <androidx.constraintlayout.utils.widget.ImageFilterView
-                        android:id="@+id/iv_second_3_2"
-                        android:layout_width="0dp"
-                        android:layout_height="0dp"
-                        android:background="@drawable/img_sakura"
-                        app:roundPercent="1"
-                        app:layout_constraintDimensionRatio="1"
-                        app:layout_constraintHeight_percent="0.055"
-                        app:layout_constraintHorizontal_bias="0.6"
-                        app:layout_constraintVertical_bias="0.51"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        />
-                    <TextView
-                        android:id="@+id/tv_second_3_2"
-                        android:layout_width="wrap_content"
-                        android:layout_height="wrap_content"
-                        android:textSize="24sp"
-                        android:text="2"
-                        android:fontFamily="@font/cookie_regular"
-                        android:textColor="#FF93CD91"
-                        app:layout_constraintHorizontal_bias="0.58"
-                        app:layout_constraintVertical_bias="0.545"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        />
-                    <androidx.constraintlayout.utils.widget.ImageFilterView
-                        android:id="@+id/iv_second_4_1"
-                        android:layout_width="0dp"
-                        android:layout_height="0dp"
-                        android:background="@drawable/img_sakura"
-                        app:roundPercent="1"
-                        app:layout_constraintDimensionRatio="1"
-                        app:layout_constraintHeight_percent="0.063"
-                        app:layout_constraintHorizontal_bias="0.6"
-                        app:layout_constraintVertical_bias="0.65"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        />
-                    <TextView
-                        android:id="@+id/tv_second_4_1"
-                        android:layout_width="wrap_content"
-                        android:layout_height="wrap_content"
-                        android:textSize="30sp"
-                        android:text="2"
-                        android:fontFamily="@font/cookie_regular"
-                        android:textColor="#FF93CD91"
-                        app:layout_constraintHorizontal_bias="0.565"
-                        app:layout_constraintVertical_bias="0.68"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        />
-                    <androidx.constraintlayout.utils.widget.ImageFilterView
-                        android:id="@+id/iv_second_4_2"
-                        android:layout_width="0dp"
-                        android:layout_height="0dp"
-                        android:background="@drawable/img_sakura"
-                        app:roundPercent="1"
-                        app:layout_constraintDimensionRatio="1"
-                        app:layout_constraintHeight_percent="0.07"
-                        app:layout_constraintHorizontal_bias="0.685"
-                        app:layout_constraintVertical_bias="0.63"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        />
-                    <TextView
-                        android:id="@+id/tv_second_4_2"
-                        android:layout_width="wrap_content"
-                        android:layout_height="wrap_content"
-                        android:textSize="24sp"
-                        android:text="2"
-                        android:fontFamily="@font/cookie_regular"
-                        android:textColor="#FF93CD91"
-                        app:layout_constraintHorizontal_bias="0.645"
-                        app:layout_constraintVertical_bias="0.65"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        />
-                    <androidx.constraintlayout.utils.widget.ImageFilterView
-                        android:id="@+id/iv_third_1_1"
-                        android:layout_width="0dp"
-                        android:layout_height="0dp"
-                        android:background="@drawable/img_sakura"
-                        app:roundPercent="1"
-                        app:layout_constraintDimensionRatio="1"
-                        app:layout_constraintHeight_percent="0.08"
-                        app:layout_constraintHorizontal_bias="0.26"
-                        app:layout_constraintVertical_bias="0.76"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        />
-                    <TextView
-                        android:id="@+id/tv_third_1_1"
-                        android:layout_width="wrap_content"
-                        android:layout_height="wrap_content"
-                        android:textSize="20sp"
-                        android:text="3"
-                        android:fontFamily="@font/cookie_regular"
-                        android:textColor="#FF93BE67"
-                        app:layout_constraintHorizontal_bias="0.31"
-                        app:layout_constraintVertical_bias="0.73"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        />
-                    <androidx.constraintlayout.utils.widget.ImageFilterView
-                        android:id="@+id/iv_third_4_1"
-                        android:layout_width="0dp"
-                        android:layout_height="0dp"
-                        android:background="@drawable/img_sakura"
-                        app:roundPercent="1"
-                        app:layout_constraintDimensionRatio="1"
-                        app:layout_constraintHeight_percent="0.075"
-                        app:layout_constraintHorizontal_bias="0.69"
-                        app:layout_constraintVertical_bias="0.745"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        />
-                    <TextView
-                        android:id="@+id/tv_third_4_1"
-                        android:layout_width="wrap_content"
-                        android:layout_height="wrap_content"
-                        android:textSize="20sp"
-                        android:text="3"
-                        android:fontFamily="@font/cookie_regular"
-                        android:textColor="#FF93BE67"
-                        app:layout_constraintHorizontal_bias="0.64"
-                        app:layout_constraintVertical_bias="0.73"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        />
-                    <androidx.constraintlayout.utils.widget.ImageFilterView
-                        android:id="@+id/iv_third_2_1"
-                        android:layout_width="0dp"
-                        android:layout_height="0dp"
-                        android:background="@drawable/img_sakura"
-                        app:roundPercent="1"
-                        app:layout_constraintDimensionRatio="1"
-                        app:layout_constraintHeight_percent="0.075"
-                        app:layout_constraintHorizontal_bias="0.371"
-                        app:layout_constraintVertical_bias="0.334"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        />
-                    <TextView
-                        android:id="@+id/tv_third_2_1"
-                        android:layout_width="wrap_content"
-                        android:layout_height="wrap_content"
-                        android:textSize="20sp"
-                        android:text="3"
-                        android:fontFamily="@font/cookie_regular"
-                        android:textColor="#FF93BE67"
-                        app:layout_constraintHorizontal_bias="0.39"
-                        app:layout_constraintVertical_bias="0.4"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        />
-                    <androidx.constraintlayout.utils.widget.ImageFilterView
-                        android:id="@+id/iv_third_3_1"
-                        android:layout_width="0dp"
-                        android:layout_height="0dp"
-                        android:background="@drawable/img_sakura"
-                        app:roundPercent="1"
-                        app:layout_constraintDimensionRatio="1"
-                        app:layout_constraintHeight_percent="0.075"
-                        app:layout_constraintHorizontal_bias="0.49"
-                        app:layout_constraintVertical_bias="0.28"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        />
-
-                    <TextView
-                        android:id="@+id/tv_third_3_1"
-                        android:layout_width="wrap_content"
-                        android:layout_height="wrap_content"
-                        android:textSize="20sp"
-                        android:text="3"
-                        android:fontFamily="@font/cookie_regular"
-                        android:textColor="#FF93BE67"
-                        app:layout_constraintHorizontal_bias="0.51"
-                        app:layout_constraintVertical_bias="0.34"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        />
-
-                    <androidx.constraintlayout.utils.widget.ImageFilterView
-                        android:id="@+id/iv_third_1_2"
-                        android:layout_width="0dp"
-                        android:layout_height="0dp"
-                        android:background="@drawable/img_sakura"
-                        app:roundPercent="1"
-                        app:layout_constraintDimensionRatio="1"
-                        app:layout_constraintHeight_percent="0.06"
-                        app:layout_constraintHorizontal_bias="0.17"
-                        app:layout_constraintVertical_bias="0.53"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        />
-
-                    <TextView
-                        android:id="@+id/tv_third_1_2"
-                        android:layout_width="wrap_content"
-                        android:layout_height="wrap_content"
-                        android:textSize="20sp"
-                        android:text="3"
-                        android:fontFamily="@font/cookie_regular"
-                        android:textColor="#FF93BE67"
-                        app:layout_constraintHorizontal_bias="0.195"
-                        app:layout_constraintVertical_bias="0.575"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        />
-                    <androidx.constraintlayout.utils.widget.ImageFilterView
-                        android:id="@+id/iv_third_1_4"
-                        android:layout_width="0dp"
-                        android:layout_height="0dp"
-                        android:background="@drawable/img_sakura"
-                        app:roundPercent="1"
-                        app:layout_constraintDimensionRatio="1"
-                        app:layout_constraintHeight_percent="0.06"
-                        app:layout_constraintHorizontal_bias="0.065"
-                        app:layout_constraintVertical_bias="0.47"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        />
-
-                    <TextView
-                        android:id="@+id/tv_third_1_4"
-                        android:layout_width="wrap_content"
-                        android:layout_height="wrap_content"
-                        android:textSize="20sp"
-                        android:text="3"
-                        android:fontFamily="@font/cookie_regular"
-                        android:textColor="#FF93BE67"
-                        app:layout_constraintHorizontal_bias="0.105"
-                        app:layout_constraintVertical_bias="0.505"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        />
-                    <androidx.constraintlayout.utils.widget.ImageFilterView
-                        android:id="@+id/iv_third_1_3"
-                        android:layout_width="0dp"
-                        android:layout_height="0dp"
-                        android:background="@drawable/img_sakura"
-                        app:roundPercent="1"
-                        app:layout_constraintDimensionRatio="1"
-                        app:layout_constraintHeight_percent="0.07"
-                        app:layout_constraintHorizontal_bias="0.05"
-                        app:layout_constraintVertical_bias="0.59"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        />
-
-                    <TextView
-                        android:id="@+id/tv_third_1_3"
-                        android:layout_width="wrap_content"
-                        android:layout_height="wrap_content"
-                        android:textSize="24sp"
-                        android:text="3"
-                        android:fontFamily="@font/cookie_regular"
-                        android:textColor="#FF93BE67"
-                        app:layout_constraintHorizontal_bias="0.105"
-                        app:layout_constraintVertical_bias="0.62"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        />
-                    <androidx.constraintlayout.utils.widget.ImageFilterView
-                        android:id="@+id/iv_third_2_2"
-                        android:layout_width="0dp"
-                        android:layout_height="0dp"
-                        android:background="@drawable/img_sakura"
-                        app:roundPercent="1"
-                        app:layout_constraintDimensionRatio="1"
-                        app:layout_constraintHeight_percent="0.06"
-                        app:layout_constraintHorizontal_bias="0.295"
-                        app:layout_constraintVertical_bias="0.315"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        />
-
-                    <TextView
-                        android:id="@+id/tv_third_2_2"
-                        android:layout_width="wrap_content"
-                        android:layout_height="wrap_content"
-                        android:textSize="24sp"
-                        android:text="3"
-                        android:fontFamily="@font/cookie_regular"
-                        android:textColor="#FF93BE67"
-                        app:layout_constraintHorizontal_bias="0.31"
-                        app:layout_constraintVertical_bias="0.37"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        />
-                    <androidx.constraintlayout.utils.widget.ImageFilterView
-                        android:id="@+id/iv_third_2_3"
-                        android:layout_width="0dp"
-                        android:layout_height="0dp"
-                        android:background="@drawable/img_sakura"
-                        app:roundPercent="1"
-                        app:layout_constraintDimensionRatio="1"
-                        app:layout_constraintHeight_percent="0.08"
-                        app:layout_constraintHorizontal_bias="0.177"
-                        app:layout_constraintVertical_bias="0.265"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        />
-
-                    <TextView
-                        android:id="@+id/tv_third_2_3"
-                        android:layout_width="wrap_content"
-                        android:layout_height="wrap_content"
-                        android:textSize="24sp"
-                        android:text="3"
-                        android:fontFamily="@font/cookie_regular"
-                        android:textColor="#FF93BE67"
-                        app:layout_constraintHorizontal_bias="0.22"
-                        app:layout_constraintVertical_bias="0.34"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        android:rotation="-30"
-                        />
-                    <androidx.constraintlayout.utils.widget.ImageFilterView
-                        android:id="@+id/iv_third_2_4"
-                        android:layout_width="0dp"
-                        android:layout_height="0dp"
-                        android:background="@drawable/img_sakura"
-                        app:roundPercent="1"
-                        app:layout_constraintDimensionRatio="1"
-                        app:layout_constraintHeight_percent="0.06"
-                        app:layout_constraintHorizontal_bias="0.33"
-                        app:layout_constraintVertical_bias="0.115"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        />
-
-                    <TextView
-                        android:id="@+id/tv_third_2_4"
-                        android:layout_width="wrap_content"
-                        android:layout_height="wrap_content"
-                        android:textSize="24sp"
-                        android:text="3"
-                        android:fontFamily="@font/cookie_regular"
-                        android:textColor="#FF93BE67"
-                        app:layout_constraintHorizontal_bias="0.335"
-                        app:layout_constraintVertical_bias="0.17"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        />
-                    <androidx.constraintlayout.utils.widget.ImageFilterView
-                        android:id="@+id/iv_third_3_2"
-                        android:layout_width="0dp"
-                        android:layout_height="0dp"
-                        android:background="@drawable/img_sakura"
-                        app:roundPercent="1"
-                        app:layout_constraintDimensionRatio="1"
-                        app:layout_constraintHeight_percent="0.08"
-                        app:layout_constraintHorizontal_bias="0.485"
-                        app:layout_constraintVertical_bias="0.08"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        />
-
-                    <TextView
-                        android:id="@+id/tv_third_3_2"
-                        android:layout_width="wrap_content"
-                        android:layout_height="wrap_content"
-                        android:textSize="24sp"
-                        android:text="3"
-                        android:fontFamily="@font/cookie_regular"
-                        android:textColor="#FF93BE67"
-                        app:layout_constraintHorizontal_bias="0.47"
-                        app:layout_constraintVertical_bias="0.16"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        />
-                    <androidx.constraintlayout.utils.widget.ImageFilterView
-                        android:id="@+id/iv_third_3_3"
-                        android:layout_width="0dp"
-                        android:layout_height="0dp"
-                        android:background="@drawable/img_sakura"
-                        app:roundPercent="1"
-                        app:layout_constraintDimensionRatio="1"
-                        app:layout_constraintHeight_percent="0.07"
-                        app:layout_constraintHorizontal_bias="0.685"
-                        app:layout_constraintVertical_bias="0.24"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        />
-
-                    <TextView
-                        android:id="@+id/tv_third_3_3"
-                        android:layout_width="wrap_content"
-                        android:layout_height="wrap_content"
-                        android:textSize="24sp"
-                        android:text="3"
-                        android:fontFamily="@font/cookie_regular"
-                        android:textColor="#FF93BE67"
-                        app:layout_constraintHorizontal_bias="0.67"
-                        app:layout_constraintVertical_bias="0.31"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        />
-                    <androidx.constraintlayout.utils.widget.ImageFilterView
-                        android:id="@+id/iv_third_3_4"
-                        android:layout_width="0dp"
-                        android:layout_height="0dp"
-                        android:background="@drawable/img_sakura"
-                        app:roundPercent="1"
-                        app:layout_constraintDimensionRatio="1"
-                        app:layout_constraintHeight_percent="0.08"
-                        app:layout_constraintHorizontal_bias="0.745"
-                        app:layout_constraintVertical_bias="0.08"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        />
-
-                    <TextView
-                        android:id="@+id/tv_third_3_4"
-                        android:layout_width="wrap_content"
-                        android:layout_height="wrap_content"
-                        android:textSize="24sp"
-                        android:text="3"
-                        android:fontFamily="@font/cookie_regular"
-                        android:textColor="#FF93BE67"
-                        app:layout_constraintHorizontal_bias="0.735"
-                        app:layout_constraintVertical_bias="0.16"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        />
-                    <androidx.constraintlayout.utils.widget.ImageFilterView
-                        android:id="@+id/iv_third_4_2"
-                        android:layout_width="0dp"
-                        android:layout_height="0dp"
-                        android:background="@drawable/img_sakura"
-                        app:roundPercent="1"
-                        app:layout_constraintDimensionRatio="1"
-                        app:layout_constraintHeight_percent="0.08"
-                        app:layout_constraintHorizontal_bias="0.885"
-                        app:layout_constraintVertical_bias="0.32"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        />
-
-                    <TextView
-                        android:id="@+id/tv_third_4_2"
-                        android:layout_width="wrap_content"
-                        android:layout_height="wrap_content"
-                        android:textSize="24sp"
-                        android:text="3"
-                        android:fontFamily="@font/cookie_regular"
-                        android:textColor="#FF93BE67"
-                        app:layout_constraintHorizontal_bias="0.84"
-                        app:layout_constraintVertical_bias="0.38"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        android:rotation="20"
-                        />
-
-                    <androidx.constraintlayout.utils.widget.ImageFilterView
-                        android:id="@+id/iv_fourth_4_3"
-                        android:layout_width="0dp"
-                        android:layout_height="0dp"
-                        android:background="@drawable/img_sakura"
-                        app:layout_constraintDimensionRatio="1"
-                        app:layout_constraintHeight_percent="0.06"
-                        app:layout_constraintHorizontal_bias="0.815"
-                        app:layout_constraintVertical_bias="0.665"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        app:roundPercent="1"
-                        />
-
-                    <TextView
-                        android:id="@+id/tv_fourth_4_3"
-                        android:layout_width="wrap_content"
-                        android:layout_height="wrap_content"
-                        android:textSize="24sp"
-                        android:text="4"
-                        android:fontFamily="@font/cookie_regular"
-                        android:textColor="#FF3F7E00"
-                        app:layout_constraintHorizontal_bias="0.77"
-                        app:layout_constraintVertical_bias="0.66"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        />
-                    <androidx.constraintlayout.utils.widget.ImageFilterView
-                        android:id="@+id/iv_fourth_4_2"
-                        android:layout_width="0dp"
-                        android:layout_height="0dp"
-                        android:background="@drawable/img_sakura"
-                        app:layout_constraintDimensionRatio="1"
-                        app:layout_constraintHeight_percent="0.07"
-                        app:layout_constraintHorizontal_bias="0.876"
-                        app:layout_constraintVertical_bias="0.545"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        app:roundPercent="1"
-                        />
-
-                    <TextView
-                        android:id="@+id/tv_fourth_4_2"
-                        android:layout_width="wrap_content"
-                        android:layout_height="wrap_content"
-                        android:textSize="24sp"
-                        android:text="4"
-                        android:fontFamily="@font/cookie_regular"
-                        android:textColor="#FF3F7E00"
-                        app:layout_constraintHorizontal_bias="0.825"
-                        app:layout_constraintVertical_bias="0.57"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        />
-                    <androidx.constraintlayout.utils.widget.ImageFilterView
-                        android:id="@+id/iv_fourth_4_1"
-                        android:layout_width="0dp"
-                        android:layout_height="0dp"
-                        android:background="@drawable/img_sakura"
-                        app:layout_constraintDimensionRatio="1"
-                        app:layout_constraintHeight_percent="0.06"
-                        app:layout_constraintHorizontal_bias="0.785"
-                        app:layout_constraintVertical_bias="0.46"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        app:roundPercent="1"
-                        />
-
-                    <TextView
-                        android:id="@+id/tv_fourth_4_1"
-                        android:layout_width="wrap_content"
-                        android:layout_height="wrap_content"
-                        android:textSize="24sp"
-                        android:text="4"
-                        android:fontFamily="@font/cookie_regular"
-                        android:textColor="#FF3F7E00"
-                        app:layout_constraintHorizontal_bias="0.76"
-                        app:layout_constraintVertical_bias="0.505"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        />
-                    <androidx.constraintlayout.utils.widget.ImageFilterView
-                        android:id="@+id/iv_fourth_3_3"
-                        android:layout_width="0dp"
-                        android:layout_height="0dp"
-                        android:background="@drawable/img_sakura"
-                        app:layout_constraintDimensionRatio="1"
-                        app:layout_constraintHeight_percent="0.06"
-                        app:layout_constraintHorizontal_bias="0.79"
-                        app:layout_constraintVertical_bias="0.263"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        app:roundPercent="1"
-                        />
-
-                    <TextView
-                        android:id="@+id/tv_fourth_3_3"
-                        android:layout_width="wrap_content"
-                        android:layout_height="wrap_content"
-                        android:textSize="24sp"
-                        android:text="4"
-                        android:fontFamily="@font/cookie_regular"
-                        android:textColor="#FF3F7E00"
-                        app:layout_constraintHorizontal_bias="0.755"
-                        app:layout_constraintVertical_bias="0.295"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        />
-                    <androidx.constraintlayout.utils.widget.ImageFilterView
-                        android:id="@+id/iv_fourth_3_2"
-                        android:layout_width="0dp"
-                        android:layout_height="0dp"
-                        android:background="@drawable/img_sakura"
-                        app:layout_constraintDimensionRatio="1"
-                        app:layout_constraintHeight_percent="0.06"
-                        app:layout_constraintHorizontal_bias="0.6455"
-                        app:layout_constraintVertical_bias="0.115"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        app:roundPercent="1"
-                        />
-
-                    <TextView
-                        android:id="@+id/tv_fourth_3_2"
-                        android:layout_width="wrap_content"
-                        android:layout_height="wrap_content"
-                        android:textSize="24sp"
-                        android:text="4"
-                        android:fontFamily="@font/cookie_regular"
-                        android:textColor="#FF3F7E00"
-                        app:layout_constraintHorizontal_bias="0.63"
-                        app:layout_constraintVertical_bias="0.17"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-
-                        />
-                    <androidx.constraintlayout.utils.widget.ImageFilterView
-                        android:id="@+id/iv_fourth_3_1"
-                        android:layout_width="0dp"
-                        android:layout_height="0dp"
-                        android:background="@drawable/img_sakura"
-                        app:layout_constraintDimensionRatio="1"
-                        app:layout_constraintHeight_percent="0.06"
-                        app:layout_constraintHorizontal_bias="0.584"
-                        app:layout_constraintVertical_bias="0.22"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        app:roundPercent="1"
-                        />
-
-                    <TextView
-                        android:id="@+id/tv_fourth_3_1"
-                        android:layout_width="wrap_content"
-                        android:layout_height="wrap_content"
-                        android:textSize="24sp"
-                        android:text="4"
-                        android:fontFamily="@font/cookie_regular"
-                        android:textColor="#FF3F7E00"
-                        app:layout_constraintHorizontal_bias="0.565"
-                        app:layout_constraintVertical_bias="0.275"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        android:rotation="20"
-                        />
-                    <androidx.constraintlayout.utils.widget.ImageFilterView
-                        android:id="@+id/iv_fourth_3_4"
-                        android:layout_width="0dp"
-                        android:layout_height="0dp"
-                        android:background="@drawable/img_sakura"
-                        app:layout_constraintDimensionRatio="1"
-                        app:layout_constraintHeight_percent="0.07"
-                        app:layout_constraintHorizontal_bias="0.575"
-                        app:layout_constraintVertical_bias="0.06"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        app:roundPercent="1"
-                        />
-
-                    <TextView
-                        android:id="@+id/tv_fourth_3_4"
-                        android:layout_width="wrap_content"
-                        android:layout_height="wrap_content"
-                        android:textSize="24sp"
-                        android:text="4"
-                        android:fontFamily="@font/cookie_regular"
-                        android:textColor="#FF3F7E00"
-                        app:layout_constraintHorizontal_bias="0.57"
-                        app:layout_constraintVertical_bias="0.125"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        />
-                    <androidx.constraintlayout.utils.widget.ImageFilterView
-                        android:id="@+id/iv_fourth_2_3"
-                        android:layout_width="0dp"
-                        android:layout_height="0dp"
-                        android:background="@drawable/img_sakura"
-                        app:layout_constraintDimensionRatio="1"
-                        app:layout_constraintHeight_percent="0.06"
-                        app:layout_constraintHorizontal_bias="0.415"
-                        app:layout_constraintVertical_bias="0.225"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        app:roundPercent="1"
-                        />
-
-                    <TextView
-                        android:id="@+id/tv_fourth_2_3"
-                        android:layout_width="wrap_content"
-                        android:layout_height="wrap_content"
-                        android:textSize="24sp"
-                        android:text="4"
-                        android:fontFamily="@font/cookie_regular"
-                        android:textColor="#FF3F7E00"
-                        app:layout_constraintHorizontal_bias="0.425"
-                        app:layout_constraintVertical_bias="0.285"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        android:rotation="-10"
-                        />
-                    <androidx.constraintlayout.utils.widget.ImageFilterView
-                        android:id="@+id/iv_fourth_2_4"
-                        android:layout_width="0dp"
-                        android:layout_height="0dp"
-                        android:background="@drawable/img_sakura"
-                        app:layout_constraintDimensionRatio="1"
-                        app:layout_constraintHeight_percent="0.05"
-                        app:layout_constraintHorizontal_bias="0.403"
-                        app:layout_constraintVertical_bias="0.05"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        app:roundPercent="1"
-                        />
-
-                    <TextView
-                        android:id="@+id/tv_fourth_2_4"
-                        android:layout_width="wrap_content"
-                        android:layout_height="wrap_content"
-                        android:textSize="20sp"
-                        android:text="4"
-                        android:fontFamily="@font/cookie_regular"
-                        android:textColor="#FF3F7E00"
-                        app:layout_constraintHorizontal_bias="0.41"
-                        app:layout_constraintVertical_bias="0.095"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        android:rotation="-10"
-                        />
-                    <androidx.constraintlayout.utils.widget.ImageFilterView
-                        android:id="@+id/iv_fourth_2_2"
-                        android:layout_width="0dp"
-                        android:layout_height="0dp"
-                        android:background="@drawable/img_sakura"
-                        app:layout_constraintDimensionRatio="1"
-                        app:layout_constraintHeight_percent="0.07"
-                        app:layout_constraintHorizontal_bias="0.228"
-                        app:layout_constraintVertical_bias="0.13"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        app:roundPercent="1"
-                        />
-
-                    <TextView
-                        android:id="@+id/tv_fourth_2_2"
-                        android:layout_width="wrap_content"
-                        android:layout_height="wrap_content"
-                        android:textSize="24sp"
-                        android:text="4"
-                        android:fontFamily="@font/cookie_regular"
-                        android:textColor="#FF3F7E00"
-                        app:layout_constraintHorizontal_bias="0.24"
-                        app:layout_constraintVertical_bias="0.2"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        />
-                    <androidx.constraintlayout.utils.widget.ImageFilterView
-                        android:id="@+id/iv_fourth_2_1"
-                        android:layout_width="0dp"
-                        android:layout_height="0dp"
-                        android:background="@drawable/img_sakura"
-                        app:layout_constraintDimensionRatio="1"
-                        app:layout_constraintHeight_percent="0.06"
-                        app:layout_constraintHorizontal_bias="0.19"
-                        app:layout_constraintVertical_bias="0.41"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        app:roundPercent="1"
-                        />
-                    <TextView
-                        android:id="@+id/tv_fourth_2_1"
-                        android:layout_width="wrap_content"
-                        android:layout_height="wrap_content"
-                        android:textSize="24sp"
-                        android:text="4"
-                        android:fontFamily="@font/cookie_regular"
-                        android:textColor="#FF3F7E00"
-                        app:layout_constraintHorizontal_bias="0.24"
-                        app:layout_constraintVertical_bias="0.44"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        android:rotation="-10"
-                        />
-                    <androidx.constraintlayout.utils.widget.ImageFilterView
-                        android:id="@+id/iv_fourth_1_2"
-                        android:layout_width="0dp"
-                        android:layout_height="0dp"
-                        android:background="@drawable/img_sakura"
-                        app:layout_constraintDimensionRatio="1"
-                        app:layout_constraintHeight_percent="0.06"
-                        app:layout_constraintHorizontal_bias="0.064"
-                        app:layout_constraintVertical_bias="0.32"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        app:roundPercent="1"
-                        />
-                    <TextView
-                        android:id="@+id/tv_fourth_1_2"
-                        android:layout_width="wrap_content"
-                        android:layout_height="wrap_content"
-                        android:textSize="24sp"
-                        android:text="4"
-                        android:fontFamily="@font/cookie_regular"
-                        android:textColor="#FF3F7E00"
-                        app:layout_constraintHorizontal_bias="0.1"
-                        app:layout_constraintVertical_bias="0.37"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        android:rotation="-10"
-                        />
-                    <androidx.constraintlayout.utils.widget.ImageFilterView
-                        android:id="@+id/iv_fourth_1_1"
-                        android:layout_width="0dp"
-                        android:layout_height="0dp"
-                        android:background="@drawable/img_sakura"
-                        app:layout_constraintDimensionRatio="1"
-                        app:layout_constraintHeight_percent="0.06"
-                        app:layout_constraintHorizontal_bias="0.086"
-                        app:layout_constraintVertical_bias="0.724"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        app:roundPercent="1"
-                        />
-                    <TextView
-                        android:id="@+id/tv_fourth_1_1"
-                        android:layout_width="wrap_content"
-                        android:layout_height="wrap_content"
-                        android:textSize="24sp"
-                        android:text="4"
-                        android:fontFamily="@font/cookie_regular"
-                        android:textColor="#FF3F7E00"
-                        app:layout_constraintHorizontal_bias="0.13"
-                        app:layout_constraintVertical_bias="0.705"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        android:rotation="-20"
-                        />
-                </androidx.constraintlayout.widget.ConstraintLayout>
-            </HorizontalScrollView>
-
-        </androidx.constraintlayout.widget.ConstraintLayout>
     </LinearLayout>
 </layout>
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_personal_center.xml b/app/src/main/res/layout/fragment_personal_center.xml
index 54ea096..feef559 100644
--- a/app/src/main/res/layout/fragment_personal_center.xml
+++ b/app/src/main/res/layout/fragment_personal_center.xml
@@ -69,6 +69,7 @@
                     >
 
                     <androidx.constraintlayout.utils.widget.ImageFilterView
+                        android:id="@+id/iv_head"
                         android:layout_width="0dp"
                         android:layout_height="0dp"
                         android:layout_marginVertical="25dp"
@@ -81,6 +82,15 @@
                         app:roundPercent="1"
                         app:imageUrl="@{viewModel.infoLiveData.img}"
                         />
+                    <ImageView
+                        android:layout_width="wrap_content"
+                        android:layout_height="wrap_content"
+                        android:background="@drawable/ic_camera"
+                        app:layout_constraintStart_toStartOf="@id/iv_head"
+                        app:layout_constraintEnd_toEndOf="@id/iv_head"
+                        app:layout_constraintBottom_toBottomOf="@id/iv_head"
+                        android:layout_marginBottom="-15dp"
+                        />
                     <View
                         android:layout_width="match_parent"
                         android:layout_height="1dp"
diff --git a/app/src/main/res/layout/item_family_member.xml b/app/src/main/res/layout/item_family_member.xml
index 173e952..a625660 100644
--- a/app/src/main/res/layout/item_family_member.xml
+++ b/app/src/main/res/layout/item_family_member.xml
@@ -11,6 +11,7 @@
         android:layout_height="wrap_content"
         app:cardCornerRadius="10dp"
         app:cardElevation="5dp"
+        app:cardBackgroundColor="@color/white"
         android:layout_margin="1dp">
 
         <LinearLayout
@@ -39,7 +40,7 @@
                 android:layout_height="30dp"
                 android:layout_marginStart="8dp"
                 android:layout_marginEnd="10dp"
-                android:background="@drawable/img_sakura"
+                android:scaleType="fitCenter"
                 app:roundPercent="1"
                 />
             <!-- 鍚嶅瓧 -->
@@ -49,7 +50,8 @@
                 android:layout_height="wrap_content"
                 android:text="鏋椾匠鏋椾匠"
                 android:textSize="16sp"
-                android:textColor="#FF5F6980"
+                android:textStyle="bold"
+                android:textColor="#FFF6739F"
                 android:ellipsize="marquee"
                 android:singleLine="true"
                 android:focusable="true"
diff --git a/app/src/main/res/layout/pop_basic_information.xml b/app/src/main/res/layout/pop_basic_information_double.xml
similarity index 99%
rename from app/src/main/res/layout/pop_basic_information.xml
rename to app/src/main/res/layout/pop_basic_information_double.xml
index a4289b2..cfd179b 100644
--- a/app/src/main/res/layout/pop_basic_information.xml
+++ b/app/src/main/res/layout/pop_basic_information_double.xml
@@ -46,7 +46,6 @@
                         android:layout_height="0dp"
                         app:layout_constraintDimensionRatio="1"
                         app:layout_constraintWidth_percent="0.3"
-                        android:background="@color/teal_200"
                         app:layout_constraintStart_toStartOf="parent"
                         app:layout_constraintTop_toTopOf="parent"
                         app:layout_constraintBottom_toBottomOf="@id/layout_personal_3"
@@ -803,7 +802,6 @@
                         android:layout_height="0dp"
                         app:layout_constraintDimensionRatio="1"
                         app:layout_constraintWidth_percent="0.3"
-                        android:background="@color/teal_200"
                         app:layout_constraintEnd_toEndOf="parent"
                         app:layout_constraintTop_toTopOf="parent"
                         app:layout_constraintBottom_toBottomOf="@id/layout_spouse_3"
diff --git a/app/src/main/res/layout/pop_basic_information_single.xml b/app/src/main/res/layout/pop_basic_information_single.xml
new file mode 100644
index 0000000..6391e71
--- /dev/null
+++ b/app/src/main/res/layout/pop_basic_information_single.xml
@@ -0,0 +1,761 @@
+<?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">
+
+    <data>
+        <variable
+            name="selfBean"
+            type="com.application.zhangshi_app_android.bean.HomeRootBean"
+            />
+    </data>
+
+    <FrameLayout
+        android:layout_width="match_parent"
+        android:layout_height="match_parent"
+        >
+        <ScrollView
+            android:layout_width="match_parent"
+            android:layout_height="wrap_content"
+            android:background="@color/transparent"
+            android:layout_gravity="center"
+            >
+
+            <LinearLayout
+                android:layout_width="match_parent"
+                android:layout_height="wrap_content"
+                android:orientation="vertical"
+                android:background="@color/transparent">
+
+                <androidx.cardview.widget.CardView
+                    android:layout_width="match_parent"
+                    android:layout_height="wrap_content"
+                    app:cardCornerRadius="6dp"
+                    app:cardBackgroundColor="#F6FFFFFF"
+                    app:cardElevation="5dp"
+                    android:layout_marginHorizontal="10dp"
+                    android:layout_marginVertical="15dp">
+
+                    <androidx.constraintlayout.widget.ConstraintLayout
+                        android:layout_width="match_parent"
+                        android:layout_height="match_parent"
+                        android:layout_marginEnd="7dp"
+                        android:layout_marginStart="10dp"
+                        android:layout_marginVertical="24dp">
+
+                        <androidx.constraintlayout.utils.widget.ImageFilterView
+                            android:id="@+id/iv_photo"
+                            android:layout_width="0dp"
+                            android:layout_height="0dp"
+                            app:layout_constraintDimensionRatio="1"
+                            app:layout_constraintWidth_percent="0.55"
+                            app:layout_constraintStart_toStartOf="parent"
+                            app:layout_constraintTop_toTopOf="parent"
+                            app:layout_constraintBottom_toBottomOf="@id/layout_personal_1"
+                            app:round="10dp"
+                            app:imageUrl="@{selfBean.img}"
+                            />
+
+                        <TextView
+                            android:id="@+id/tv_basic_personal_information"
+                            android:layout_width="wrap_content"
+                            android:layout_height="wrap_content"
+                            android:layout_marginStart="10dp"
+                            android:text="涓汉鍩烘湰淇℃伅"
+                            android:textColor="#99000000"
+                            android:textSize="10sp"
+                            app:layout_constraintStart_toEndOf="@id/iv_photo"
+                            app:layout_constraintTop_toTopOf="@id/iv_photo"
+                            app:layout_constraintBottom_toTopOf="@id/layout_personal_1"
+                            />
+
+                        <LinearLayout
+                            android:id="@+id/layout_personal_1"
+                            android:layout_width="0dp"
+                            android:layout_height="wrap_content"
+                            app:layout_constraintEnd_toEndOf="parent"
+                            app:layout_constraintStart_toStartOf="@+id/tv_basic_personal_information"
+                            app:layout_constraintTop_toBottomOf="@id/tv_basic_personal_information"
+                            app:layout_constraintBottom_toBottomOf="@id/iv_photo"
+                            android:layout_marginTop="10dp"
+                            android:orientation="vertical"
+                            >
+
+                            <LinearLayout
+                                android:layout_width="match_parent"
+                                android:layout_height="wrap_content"
+                                >
+
+                                <TextView
+                                    android:layout_width="wrap_content"
+                                    android:layout_height="wrap_content"
+                                    android:background="@drawable/shape_fffad1e0_10_10_0_10"
+                                    android:paddingHorizontal="6dp"
+                                    android:paddingVertical="3dp"
+                                    android:text="濮撳悕"
+                                    android:textColor="#FF000000"
+                                    android:textSize="12sp" />
+
+                                <FrameLayout
+                                    android:layout_width="wrap_content"
+                                    android:layout_height="match_parent"
+                                    >
+
+                                    <TextView
+                                        android:layout_width="wrap_content"
+                                        android:layout_height="wrap_content"
+                                        android:paddingHorizontal="6dp"
+                                        android:text="@{selfBean.nickName}"
+                                        android:textColor="#FF000000"
+                                        android:textSize="12sp"
+                                        android:layout_gravity="center_vertical"
+                                        app:textOverflowMode="@{4}"
+                                        tools:text="aaaaaaaaaaaaaaaaaaaaaaaaa"
+                                        />
+
+                                    <View
+                                        android:layout_width="match_parent"
+                                        android:layout_height="1dp"
+                                        android:layout_gravity="bottom"
+                                        android:background="#FFFAD1E0" />
+                                </FrameLayout>
+                            </LinearLayout>
+                            <LinearLayout
+                                android:layout_width="match_parent"
+                                android:layout_height="wrap_content"
+                                android:layout_marginTop="10dp"
+                                >
+                                <TextView
+                                    android:layout_width="wrap_content"
+                                    android:layout_height="wrap_content"
+                                    android:background="@drawable/shape_fffad1e0_10_10_0_10"
+                                    android:paddingHorizontal="6dp"
+                                    android:paddingVertical="3dp"
+                                    android:text="鎬у埆"
+                                    android:textColor="#FF000000"
+                                    android:textSize="12sp"
+                                    />
+                                <FrameLayout
+                                    android:layout_width="wrap_content"
+                                    android:layout_height="match_parent"
+                                    >
+                                    <TextView
+                                        android:layout_width="wrap_content"
+                                        android:layout_height="wrap_content"
+                                        android:paddingHorizontal="6dp"
+                                        android:text="@{selfBean.sex==1?`鐢穈:`濂砢}"
+                                        android:textColor="#FF000000"
+                                        android:textSize="12sp"
+                                        android:layout_gravity="center_vertical"
+                                        app:textOverflowMode="@{4}"
+                                        />
+
+                                    <View
+                                        android:layout_width="match_parent"
+                                        android:layout_height="1dp"
+                                        android:layout_gravity="bottom"
+                                        android:background="#FFFAD1E0" />
+                                </FrameLayout>
+
+                            </LinearLayout>
+                            <LinearLayout
+                                android:layout_width="wrap_content"
+                                android:layout_height="wrap_content"
+                                android:layout_marginTop="10dp"
+                                >
+                                <TextView
+                                    android:layout_width="wrap_content"
+                                    android:layout_height="wrap_content"
+                                    android:background="@drawable/shape_fffad1e0_10_10_0_10"
+                                    android:paddingHorizontal="6dp"
+                                    android:paddingVertical="3dp"
+                                    android:text="韬唤"
+                                    android:textColor="#FF000000"
+                                    android:textSize="12sp" />
+
+                                <FrameLayout
+                                    android:layout_width="wrap_content"
+                                    android:layout_height="match_parent"
+                                    >
+                                    <TextView
+                                        android:layout_width="wrap_content"
+                                        android:layout_height="wrap_content"
+                                        android:paddingHorizontal="6dp"
+                                        android:text="@{`绗琡+ selfBean.identity + `浠}"
+                                        android:textColor="#FF000000"
+                                        android:textSize="12sp"
+                                        android:layout_gravity="center_vertical"
+                                        app:textOverflowMode="@{4}"
+                                        />
+
+                                    <View
+                                        android:layout_width="match_parent"
+                                        android:layout_height="1dp"
+                                        android:layout_gravity="bottom"
+                                        android:background="#FFFAD1E0" />
+                                </FrameLayout>
+                            </LinearLayout>
+                            <LinearLayout
+                                android:layout_width="wrap_content"
+                                android:layout_height="wrap_content"
+                                android:layout_marginTop="10dp">
+
+                                <TextView
+                                    android:layout_width="wrap_content"
+                                    android:layout_height="wrap_content"
+                                    android:background="@drawable/shape_fffad1e0_10_10_0_10"
+                                    android:paddingHorizontal="6dp"
+                                    android:paddingVertical="3dp"
+                                    android:text="鐢熸棩"
+                                    android:textColor="#FF000000"
+                                    android:textSize="12sp" />
+
+                                <FrameLayout
+                                    android:layout_width="wrap_content"
+                                    android:layout_height="match_parent">
+
+                                    <androidx.appcompat.widget.AppCompatTextView
+                                        android:layout_width="wrap_content"
+                                        android:layout_height="wrap_content"
+                                        android:text="@{selfBean.birth}"
+                                        android:textColor="#FF000000"
+                                        android:textSize="12sp"
+                                        app:autoSizeTextType="uniform"
+                                        app:autoSizeMaxTextSize="16sp"
+                                        app:autoSizeMinTextSize="10sp"
+                                        android:ellipsize="end"
+                                        android:maxLines="1"
+                                        android:layout_gravity="center"
+                                        tools:text="2001-01-01"
+                                        />
+
+                                    <View
+                                        android:layout_width="match_parent"
+                                        android:layout_height="1dp"
+                                        android:layout_gravity="bottom"
+                                        android:background="#FFFAD1E0" />
+                                </FrameLayout>
+
+                            </LinearLayout>
+                            <LinearLayout
+                                android:layout_width="match_parent"
+                                android:layout_height="wrap_content"
+                                android:layout_marginTop="10dp"
+                                >
+                                <TextView
+                                    android:layout_width="wrap_content"
+                                    android:layout_height="wrap_content"
+                                    android:background="@drawable/shape_fffad1e0_10_10_0_10"
+                                    android:paddingHorizontal="6dp"
+                                    android:paddingVertical="3dp"
+                                    android:text="鏇剧敤鍚�"
+                                    android:textColor="#FF000000"
+                                    android:textSize="12sp" />
+
+                                <FrameLayout
+                                    android:layout_width="wrap_content"
+                                    android:layout_height="match_parent"
+                                    >
+                                    <TextView
+                                        android:layout_width="wrap_content"
+                                        android:layout_height="wrap_content"
+                                        android:paddingHorizontal="6dp"
+                                        android:layout_gravity="center_vertical"
+                                        app:textOverflowMode="@{4}"
+                                        android:text="@{selfBean.oldName}"
+                                        android:textColor="#FF000000"
+                                        android:textSize="12sp"
+                                        />
+
+                                    <View
+                                        android:layout_width="match_parent"
+                                        android:layout_height="1dp"
+                                        android:layout_gravity="bottom"
+                                        android:background="#FFFAD1E0" />
+                                </FrameLayout>
+                            </LinearLayout>
+                            <LinearLayout
+                                android:layout_width="match_parent"
+                                android:layout_height="wrap_content"
+                                android:layout_marginTop="10dp">
+
+                                <TextView
+                                    android:layout_width="wrap_content"
+                                    android:layout_height="wrap_content"
+                                    android:background="@drawable/shape_fffad1e0_10_10_0_10"
+                                    android:paddingHorizontal="6dp"
+                                    android:paddingVertical="3dp"
+                                    android:text="姘戞棌"
+                                    android:textColor="#FF000000"
+                                    android:textSize="12sp" />
+
+                                <FrameLayout
+                                    android:layout_width="wrap_content"
+                                    android:layout_height="match_parent">
+
+                                    <TextView
+                                        android:layout_width="wrap_content"
+                                        android:layout_height="wrap_content"
+                                        android:paddingHorizontal="6dp"
+                                        android:text="@{selfBean.nation}"
+                                        android:textColor="#FF000000"
+                                        android:textSize="12sp"
+                                        android:layout_gravity="center_vertical"
+                                        app:textOverflowMode="@{4}"
+                                        />
+
+                                    <View
+                                        android:layout_width="match_parent"
+                                        android:layout_height="1dp"
+                                        android:layout_gravity="bottom"
+                                        android:background="#FFFAD1E0" />
+                                </FrameLayout>
+
+                            </LinearLayout>
+                        </LinearLayout>
+
+
+                        <LinearLayout
+                            android:id="@+id/layout_personal_4"
+                            android:layout_width="0dp"
+                            android:layout_height="wrap_content"
+                            android:layout_marginTop="24dp"
+                            app:layout_constraintEnd_toEndOf="parent"
+                            app:layout_constraintStart_toStartOf="parent"
+                            app:layout_constraintTop_toBottomOf="@id/layout_personal_1">
+
+                            <LinearLayout
+                                android:layout_width="0dp"
+                                android:layout_height="wrap_content"
+                                android:layout_weight="1">
+
+                                <TextView
+                                    android:layout_width="wrap_content"
+                                    android:layout_height="wrap_content"
+                                    android:background="@drawable/shape_fffad1e0_10_10_0_10"
+                                    android:paddingHorizontal="6dp"
+                                    android:paddingVertical="3dp"
+                                    android:text="濠氬Щ鐘跺喌"
+                                    android:textColor="#FF000000"
+                                    android:textSize="12sp" />
+
+                                <FrameLayout
+                                    android:layout_width="wrap_content"
+                                    android:layout_height="match_parent">
+
+                                    <TextView
+                                        android:layout_width="match_parent"
+                                        android:layout_height="wrap_content"
+                                        android:paddingHorizontal="6dp"
+                                        android:layout_gravity="center_vertical"
+                                        app:textOverflowMode="@{4}"
+                                        android:text="@{selfBean.maritalStatusStr}"
+                                        android:textColor="#FF000000"
+                                        android:textSize="12sp"
+                                        />
+
+                                    <View
+                                        android:layout_width="match_parent"
+                                        android:layout_height="1dp"
+                                        android:layout_gravity="bottom"
+                                        android:background="#FFFAD1E0" />
+                                </FrameLayout>
+                            </LinearLayout>
+
+                            <LinearLayout
+                                android:layout_width="0dp"
+                                android:layout_height="wrap_content"
+                                android:layout_weight="1"
+                                android:layout_marginStart="10dp">
+
+                                <TextView
+                                    android:layout_width="wrap_content"
+                                    android:layout_height="wrap_content"
+                                    android:background="@drawable/shape_fffad1e0_10_10_0_10"
+                                    android:paddingHorizontal="6dp"
+                                    android:paddingVertical="3dp"
+                                    android:text="閰嶅伓"
+                                    android:textColor="#FF000000"
+                                    android:textSize="12sp" />
+
+                                <FrameLayout
+                                    android:layout_width="wrap_content"
+                                    android:layout_height="match_parent">
+
+                                    <TextView
+                                        android:layout_width="wrap_content"
+                                        android:layout_height="wrap_content"
+                                        android:layout_gravity="center_vertical"
+                                        app:textOverflowMode="@{4}"
+                                        android:paddingHorizontal="6dp"
+                                        android:text="@{selfBean.spouse.nickName}"
+                                        android:textColor="#FF000000"
+                                        android:textSize="12sp" />
+
+                                    <View
+                                        android:layout_width="match_parent"
+                                        android:layout_height="1dp"
+                                        android:layout_gravity="bottom"
+                                        android:background="#FFFAD1E0" />
+                                </FrameLayout>
+
+                            </LinearLayout>
+                        </LinearLayout>
+
+                        <LinearLayout
+                            android:id="@+id/layout_personal_5"
+                            android:layout_width="0dp"
+                            android:layout_height="wrap_content"
+                            android:layout_marginTop="16dp"
+                            app:layout_constraintEnd_toEndOf="parent"
+                            app:layout_constraintStart_toStartOf="parent"
+                            app:layout_constraintTop_toBottomOf="@+id/layout_personal_4">
+
+                            <LinearLayout
+                                android:layout_width="0dp"
+                                android:layout_height="wrap_content"
+                                android:layout_weight="1">
+
+                                <TextView
+                                    android:layout_width="wrap_content"
+                                    android:layout_height="wrap_content"
+                                    android:background="@drawable/shape_fffad1e0_10_10_0_10"
+                                    android:paddingHorizontal="6dp"
+                                    android:paddingVertical="3dp"
+                                    android:text="鎴风睄鍦板潃"
+                                    android:textColor="#FF000000"
+                                    android:textSize="12sp" />
+
+                                <FrameLayout
+                                    android:layout_width="wrap_content"
+                                    android:layout_height="match_parent">
+
+                                    <TextView
+                                        android:layout_width="match_parent"
+                                        android:layout_height="wrap_content"
+                                        android:layout_gravity="center_vertical"
+                                        app:textOverflowMode="@{4}"
+                                        android:paddingHorizontal="6dp"
+                                        android:text="@{selfBean.locationAddress}"
+                                        android:textColor="#FF000000"
+                                        android:textSize="12sp"
+                                        />
+
+                                    <View
+                                        android:layout_width="match_parent"
+                                        android:layout_height="1dp"
+                                        android:layout_gravity="bottom"
+                                        android:background="#FFFAD1E0" />
+                                </FrameLayout>
+                            </LinearLayout>
+
+                            <LinearLayout
+                                android:layout_width="0dp"
+                                android:layout_height="wrap_content"
+                                android:layout_weight="1"
+                                android:layout_marginStart="10dp">
+
+                                <TextView
+                                    android:layout_width="wrap_content"
+                                    android:layout_height="wrap_content"
+                                    android:background="@drawable/shape_fffad1e0_10_10_0_10"
+                                    android:paddingHorizontal="6dp"
+                                    android:paddingVertical="3dp"
+                                    android:text="鑱旂郴鏂瑰紡"
+                                    android:textColor="#FF000000"
+                                    android:textSize="12sp" />
+
+                                <FrameLayout
+                                    android:layout_width="wrap_content"
+                                    android:layout_height="match_parent">
+
+                                    <TextView
+                                        android:layout_width="wrap_content"
+                                        android:layout_height="wrap_content"
+                                        android:layout_gravity="center_vertical"
+                                        app:textOverflowMode="@{4}"
+                                        android:paddingHorizontal="6dp"
+                                        android:text="@{selfBean.phoneNumber}"
+                                        android:textColor="#FF000000"
+                                        android:textSize="12sp" />
+
+                                    <View
+                                        android:layout_width="match_parent"
+                                        android:layout_height="1dp"
+                                        android:layout_gravity="bottom"
+                                        android:background="#FFFAD1E0" />
+                                </FrameLayout>
+
+                            </LinearLayout>
+                        </LinearLayout>
+
+                        <LinearLayout
+                            android:id="@+id/layout_personal_6"
+                            android:layout_width="0dp"
+                            android:layout_height="wrap_content"
+                            android:layout_marginTop="16dp"
+                            app:layout_constraintEnd_toEndOf="parent"
+                            app:layout_constraintStart_toStartOf="parent"
+                            app:layout_constraintTop_toBottomOf="@+id/layout_personal_5">
+
+                            <LinearLayout
+                                android:layout_width="0dp"
+                                android:layout_height="wrap_content"
+                                android:layout_weight="1">
+
+                                <TextView
+                                    android:layout_width="wrap_content"
+                                    android:layout_height="wrap_content"
+                                    android:background="@drawable/shape_fffad1e0_10_10_0_10"
+                                    android:paddingHorizontal="6dp"
+                                    android:paddingVertical="3dp"
+                                    android:text="甯镐綇鍦板潃"
+                                    android:textColor="#FF000000"
+                                    android:textSize="12sp" />
+
+                                <FrameLayout
+                                    android:layout_width="wrap_content"
+                                    android:layout_height="match_parent">
+
+                                    <TextView
+                                        android:layout_width="wrap_content"
+                                        android:layout_height="wrap_content"
+                                        android:layout_gravity="center_vertical"
+                                        app:textOverflowMode="@{4}"
+                                        android:paddingHorizontal="6dp"
+                                        android:text="@{selfBean.alwaysAddress}"
+                                        android:textColor="#FF000000"
+                                        android:textSize="12sp" />
+
+                                    <View
+                                        android:layout_width="match_parent"
+                                        android:layout_height="1dp"
+                                        android:layout_gravity="bottom"
+                                        android:background="#FFFAD1E0" />
+                                </FrameLayout>
+                            </LinearLayout>
+
+                            <LinearLayout
+                                android:layout_width="0dp"
+                                android:layout_height="wrap_content"
+                                android:layout_weight="1"
+                                android:layout_marginStart="10dp">
+
+                                <TextView
+                                    android:layout_width="wrap_content"
+                                    android:layout_height="wrap_content"
+                                    android:background="@drawable/shape_fffad1e0_10_10_0_10"
+                                    android:paddingHorizontal="6dp"
+                                    android:paddingVertical="3dp"
+                                    android:text="寰俊鍙�"
+                                    android:textColor="#FF000000"
+                                    android:textSize="12sp" />
+
+                                <FrameLayout
+                                    android:layout_width="wrap_content"
+                                    android:layout_height="match_parent">
+
+                                    <TextView
+                                        android:layout_width="wrap_content"
+                                        android:layout_height="wrap_content"
+                                        android:layout_gravity="center_vertical"
+                                        app:textOverflowMode="@{4}"
+                                        android:paddingHorizontal="6dp"
+                                        android:text="@{selfBean.wxNo}"
+                                        android:textColor="#FF000000"
+                                        android:textSize="12sp" />
+
+                                    <View
+                                        android:layout_width="match_parent"
+                                        android:layout_height="1dp"
+                                        android:layout_gravity="bottom"
+                                        android:background="#FFFAD1E0" />
+                                </FrameLayout>
+
+                            </LinearLayout>
+                        </LinearLayout>
+
+                        <LinearLayout
+                            android:id="@+id/layout_personal_7"
+                            android:layout_width="0dp"
+                            android:layout_height="wrap_content"
+                            android:layout_marginTop="16dp"
+                            app:layout_constraintEnd_toEndOf="parent"
+                            app:layout_constraintStart_toStartOf="parent"
+                            app:layout_constraintTop_toBottomOf="@+id/layout_personal_6">
+
+                            <LinearLayout
+                                android:layout_width="0dp"
+                                android:layout_height="wrap_content"
+                                android:layout_weight="1">
+
+                                <TextView
+                                    android:layout_width="wrap_content"
+                                    android:layout_height="wrap_content"
+                                    android:background="@drawable/shape_fffad1e0_10_10_0_10"
+                                    android:paddingHorizontal="6dp"
+                                    android:paddingVertical="3dp"
+                                    android:text="鏀挎不闈㈣矊"
+                                    android:textColor="#FF000000"
+                                    android:textSize="12sp" />
+
+                                <FrameLayout
+                                    android:layout_width="wrap_content"
+                                    android:layout_height="match_parent">
+
+                                    <TextView
+                                        android:layout_width="wrap_content"
+                                        android:layout_height="wrap_content"
+                                        android:layout_gravity="center_vertical"
+                                        app:textOverflowMode="@{4}"
+                                        android:paddingHorizontal="6dp"
+                                        android:text="@{selfBean.politicalOutlook}"
+                                        android:textColor="#FF000000"
+                                        android:textSize="12sp" />
+
+                                    <View
+                                        android:layout_width="match_parent"
+                                        android:layout_height="1dp"
+                                        android:layout_gravity="bottom"
+                                        android:background="#FFFAD1E0" />
+                                </FrameLayout>
+                            </LinearLayout>
+
+                            <LinearLayout
+                                android:layout_width="0dp"
+                                android:layout_height="wrap_content"
+                                android:layout_weight="1"
+                                android:layout_marginStart="10dp">
+
+                                <TextView
+                                    android:layout_width="wrap_content"
+                                    android:layout_height="wrap_content"
+                                    android:background="@drawable/shape_fffad1e0_10_10_0_10"
+                                    android:paddingHorizontal="6dp"
+                                    android:paddingVertical="3dp"
+                                    android:text="QQ鍙�"
+                                    android:textColor="#FF000000"
+                                    android:textSize="12sp" />
+
+                                <FrameLayout
+                                    android:layout_width="wrap_content"
+                                    android:layout_height="match_parent">
+
+                                    <TextView
+                                        android:layout_width="wrap_content"
+                                        android:layout_height="wrap_content"
+                                        android:layout_gravity="center_vertical"
+                                        app:textOverflowMode="@{4}"
+                                        android:paddingHorizontal="6dp"
+                                        android:text="@{selfBean.qqNo}"
+                                        android:textColor="#FF000000"
+                                        android:textSize="12sp" />
+
+                                    <View
+                                        android:layout_width="match_parent"
+                                        android:layout_height="1dp"
+                                        android:layout_gravity="bottom"
+                                        android:background="#FFFAD1E0" />
+                                </FrameLayout>
+
+                            </LinearLayout>
+                        </LinearLayout>
+
+                        <LinearLayout
+                            android:layout_width="0dp"
+                            android:layout_height="wrap_content"
+                            android:layout_marginTop="16dp"
+
+                            app:layout_constraintEnd_toEndOf="parent"
+                            app:layout_constraintStart_toStartOf="parent"
+                            app:layout_constraintTop_toBottomOf="@+id/layout_personal_7">
+
+                            <LinearLayout
+                                android:layout_width="0dp"
+                                android:layout_height="wrap_content"
+                                android:layout_weight="1">
+
+                                <TextView
+                                    android:layout_width="wrap_content"
+                                    android:layout_height="wrap_content"
+                                    android:background="@drawable/shape_fffad1e0_10_10_0_10"
+                                    android:paddingHorizontal="6dp"
+                                    android:paddingVertical="3dp"
+                                    android:text="鎵�鍦ㄥ崟浣�"
+                                    android:textColor="#FF000000"
+                                    android:textSize="12sp" />
+
+                                <FrameLayout
+                                    android:layout_width="wrap_content"
+                                    android:layout_height="match_parent">
+
+                                    <TextView
+                                        android:layout_width="wrap_content"
+                                        android:layout_height="wrap_content"
+                                        android:layout_gravity="center_vertical"
+                                        app:textOverflowMode="@{4}"
+                                        android:paddingHorizontal="6dp"
+                                        android:text="@{selfBean.unit}"
+                                        android:textColor="#FF000000"
+                                        android:textSize="12sp" />
+
+                                    <View
+                                        android:layout_width="match_parent"
+                                        android:layout_height="1dp"
+                                        android:layout_gravity="bottom"
+                                        android:background="#FFFAD1E0" />
+                                </FrameLayout>
+                            </LinearLayout>
+
+                            <LinearLayout
+                                android:layout_width="0dp"
+                                android:layout_height="wrap_content"
+                                android:layout_weight="1"
+                                android:layout_marginStart="10dp">
+
+                                <TextView
+                                    android:layout_width="wrap_content"
+                                    android:layout_height="wrap_content"
+                                    android:background="@drawable/shape_fffad1e0_10_10_0_10"
+                                    android:paddingHorizontal="6dp"
+                                    android:paddingVertical="3dp"
+                                    android:text="鑱屽姟"
+                                    android:textColor="#FF000000"
+                                    android:textSize="12sp" />
+
+                                <FrameLayout
+                                    android:layout_width="wrap_content"
+                                    android:layout_height="match_parent">
+
+                                    <TextView
+                                        android:layout_width="wrap_content"
+                                        android:layout_height="wrap_content"
+                                        android:layout_gravity="center_vertical"
+                                        app:textOverflowMode="@{4}"
+                                        android:paddingHorizontal="6dp"
+                                        android:text="@{selfBean.position}"
+                                        android:textColor="#FF000000"
+                                        android:textSize="12sp"
+                                        tools:text="鑱屽姟"
+                                        />
+
+                                    <View
+                                        android:layout_width="match_parent"
+                                        android:layout_height="1dp"
+                                        android:layout_gravity="bottom"
+                                        android:background="#FFFAD1E0" />
+                                </FrameLayout>
+
+                            </LinearLayout>
+                        </LinearLayout>
+
+                    </androidx.constraintlayout.widget.ConstraintLayout>
+
+                </androidx.cardview.widget.CardView>
+
+            </LinearLayout>
+
+        </ScrollView>
+
+    </FrameLayout>
+</layout>
\ No newline at end of file
diff --git a/app/src/main/res/layout/pop_operate_home_root_net.xml b/app/src/main/res/layout/pop_operate_home_root_net.xml
index 0a306a5..55172ab 100644
--- a/app/src/main/res/layout/pop_operate_home_root_net.xml
+++ b/app/src/main/res/layout/pop_operate_home_root_net.xml
@@ -15,81 +15,10 @@
         android:gravity="center_horizontal"
         >
         <TextView
-            android:id="@+id/tv_first"
-            android:layout_width="match_parent"
-            android:layout_height="32dp"
-            android:gravity="center"
-            android:text="鍙樉绀虹涓�浠�"
-            android:textColor="#FF333333"
-            android:textSize="12sp"
-            />
-        <View
-            android:layout_width="match_parent"
-            android:layout_height="0.3dp"
-            android:background="#FF939393"
-            />
-        <TextView
-            android:id="@+id/tv_second"
-            android:layout_width="match_parent"
-            android:layout_height="32dp"
-            android:text="鏄剧ず鑷崇浜屼唬"
-            android:gravity="center"
-            android:textColor="#FF333333"
-            android:textSize="12sp"
-            />
-        <View
-            android:layout_width="match_parent"
-            android:layout_height="0.3dp"
-            android:background="#FF939393"
-            />
-
-        <TextView
-            android:id="@+id/tv_third"
-            android:layout_width="match_parent"
-            android:layout_height="32dp"
-            android:text="鏄剧ず鑷崇涓変唬"
-            android:gravity="center"
-            android:textColor="#FF333333"
-            android:textSize="12sp"
-            />
-        <View
-            android:layout_width="match_parent"
-            android:layout_height="0.3dp"
-            android:background="#FF939393"
-            />
-        <TextView
-            android:id="@+id/tv_all"
-            android:layout_width="match_parent"
-            android:layout_height="32dp"
-            android:text="鏄剧ず鍏ㄩ儴"
-            android:gravity="center"
-            android:textColor="#FF333333"
-            android:textSize="12sp"
-            />
-        <View
-            android:layout_width="match_parent"
-            android:layout_height="0.3dp"
-            android:background="#FF939393"
-            />
-        <TextView
             android:id="@+id/tv_family"
             android:layout_width="match_parent"
             android:layout_height="32dp"
             android:text="瀹惰氨"
-            android:gravity="center"
-            android:textColor="#FF333333"
-            android:textSize="12sp"
-            />
-        <View
-            android:layout_width="match_parent"
-            android:layout_height="0.3dp"
-            android:background="#FF939393"
-            />
-        <TextView
-            android:id="@+id/tv_relation"
-            android:layout_width="match_parent"
-            android:layout_height="32dp"
-            android:text="瀹舵棌鍏崇郴"
             android:gravity="center"
             android:textColor="#FF333333"
             android:textSize="12sp"
diff --git a/app_base/src/main/java/com/android/app_base/base/view/BaseActivity.java b/app_base/src/main/java/com/android/app_base/base/view/BaseActivity.java
index aa5a3ff..8a06b68 100644
--- a/app_base/src/main/java/com/android/app_base/base/view/BaseActivity.java
+++ b/app_base/src/main/java/com/android/app_base/base/view/BaseActivity.java
@@ -5,6 +5,7 @@
 import android.content.Context;
 import android.content.Intent;
 import android.os.Bundle;
+import android.text.TextUtils;
 import android.view.View;
 import android.view.ViewGroup;
 import android.view.Window;
@@ -30,6 +31,7 @@
 
 import java.lang.reflect.ParameterizedType;
 import java.lang.reflect.Type;
+import java.util.Set;
 
 /**
  *  Activity鍩虹被,鎵�鏈夌殑 Activity 閮借缁ф壙姝ょ被
@@ -171,7 +173,9 @@
         viewModel.getMessageLivaData().observe(this, new Observer<String>() {
             @Override
             public void onChanged(String message) {
-                ToastUtils.showShort(message);
+                if (!TextUtils.isEmpty(message)){
+                    ToastUtils.showShort(message);
+                }
             }
         });
     }
diff --git a/app_base/src/main/java/com/android/app_base/base/view/BaseFragment.java b/app_base/src/main/java/com/android/app_base/base/view/BaseFragment.java
index 42d1ef2..2a4d160 100644
--- a/app_base/src/main/java/com/android/app_base/base/view/BaseFragment.java
+++ b/app_base/src/main/java/com/android/app_base/base/view/BaseFragment.java
@@ -19,6 +19,7 @@
 import com.android.app_base.base.StateViewEnum;
 import com.android.app_base.base.action.ClickAction;
 import com.android.app_base.base.viewmodel.BaseViewModel;
+import com.blankj.utilcode.util.ToastUtils;
 import com.gyf.immersionbar.ImmersionBar;
 import com.hjq.bar.TitleBar;
 
@@ -181,6 +182,14 @@
                 }
             }
         });
+        viewModel.getMessageLivaData().observe(this, new Observer<String>() {
+            @Override
+            public void onChanged(String message) {
+                if (message != null){
+                    ToastUtils.showShort(message);
+                }
+            }
+        });
     }
     /**
      * 缂虹渷椤电瓑鐘舵�佽鍥剧殑鏇存柊

--
Gitblit v1.9.1