From 82e57df230ecb744af6c8865f80870ba03c86d89 Mon Sep 17 00:00:00 2001
From: Linjiajia <319408893@qq.com>
Date: 星期二, 25 七月 2023 22:18:27 +0800
Subject: [PATCH] 基本功能完成

---
 app/src/main/java/com/application/zhangshi_app_android/ui/home/HomeFragment.java |  464 +++++++++++++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 424 insertions(+), 40 deletions(-)

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 fff69fb..e6db79c 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,28 +1,63 @@
 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.ui.DLBaseFragment;
 import com.hjq.bar.TitleBar;
+
+import java.util.ArrayList;
+import java.util.List;
 
 /**
  * @author Ljj
  * @date 2023.3.15
  * @desc 棣栭〉 Fragment
  */
-public class HomeFragment extends BaseFragment<FragmentHomeBinding,HomeFragmentViewModel> {
-    private PopupWindow mPopupWindow;
-    private HomeMemberAdapter homeMemberAdapter;
+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() {
     }
@@ -49,35 +84,332 @@
 
     }
 
+    @SuppressLint("ClickableViewAccessibility")
     @Override
     protected void initView() {
-        mPopupWindow = new PopupWindow(getSelfActivity());
-        mPopupWindow.setContentView(View.inflate(getSelfActivity(),R.layout.pop_basic_information,null));
-        mPopupWindow.setWidth(ViewGroup.LayoutParams.MATCH_PARENT);
-        mPopupWindow.setHeight(ViewGroup.LayoutParams.WRAP_CONTENT);
-        mPopupWindow.setBackgroundDrawable(new ColorDrawable(0x0000));
-        mPopupWindow.setAnimationStyle(com.android.app_base.R.style.pop_info);
-        mPopupWindow.setFocusable(true);
-        mPopupWindow.setTouchable(true);
-        mPopupWindow.setOutsideTouchable(true);
+        mOperatePopupWindow = initPopUpWindow(View.inflate(getSelfActivity(),R.layout.pop_operate_home_root_net,null));
+        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();
+        });
+        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);
+                            }
+                        });
+                    }
 
-        homeMemberAdapter = new HomeMemberAdapter(getSelfActivity());
-        LinearItemDecoration itemDecoration = new LinearItemDecoration();
-        itemDecoration.setBottomSpace((int) getResources().getDimension(com.android.app_base.R.dimen.dp_8));
-        itemDecoration.setHorizontalSpace((int) getResources().getDimension(com.android.app_base.R.dimen.dp_20));
-        itemDecoration.setFirstTop((int) getResources().getDimension(com.android.app_base.R.dimen.dp_20));
-        binding.rvHomeMember.addItemDecoration(itemDecoration);
-        binding.rvHomeMember.setAdapter(homeMemberAdapter);
+                    @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;
+            }
+        });
+
+        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);
     }
+
+
 
     @Override
     protected void initData() {
-
+        viewModel.getHomeRootBeanList();
     }
 
     @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());
+                        }
+                    }
+                }
+            }
+        });
     }
 
     @Override
@@ -85,27 +417,79 @@
         return true;
     }
 
-    private boolean isShow = true;
-    @Override
-    public void onLeftClick(TitleBar titleBar) {
-//        if (isShow) {
-//
-//            mPopupWindow.setHeight(binding.treeView.getHeight());
-//            mPopupWindow.showAsDropDown(binding.titleBar,0,0);
-//            isShow = false;
-//        }else {
-//            binding.rvHomeMember.setVisibility(View.VISIBLE);
-//            binding.treeView.setVisibility(View.GONE);
-//            binding.layoutHomeRootNet.setVisibility(View.GONE);
-//            homeMemberAdapter.addItem(new HomeMemberBean("绗竴浠�","寮犱笁","鐢�",null,"2023.09.09","2023.09.09","12345678901","寮犳皬鍏徃","寮犲洓"));
-//            homeMemberAdapter.addItem(new HomeMemberBean("绗竴浠�","寮犱笁","鐢�",null,"2023.09.09","2023.09.09","12345678901","寮犳皬鍏徃","寮犲洓"));
-//            homeMemberAdapter.addItem(new HomeMemberBean("绗竴浠�","寮犱笁","鐢�",null,"2023.09.09","2023.09.09","12345678901","寮犳皬鍏徃","寮犲洓"));
-//            homeMemberAdapter.addItem(new HomeMemberBean("绗竴浠�","寮犱笁","鐢�",null,"2023.09.09","2023.09.09","12345678901","寮犳皬鍏徃","寮犲洓"));
-//            homeMemberAdapter.addItem(new HomeMemberBean("绗竴浠�","寮犱笁","鐢�",null,"2023.09.09","2023.09.09","12345678901","寮犳皬鍏徃","寮犲洓"));
-//            homeMemberAdapter.addItem(new HomeMemberBean("绗竴浠�","寮犱笁","鐢�",null,"2023.09.09","2023.09.09","12345678901","寮犳皬鍏徃","寮犲洓"));
-//            isShow = 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

--
Gitblit v1.9.1