From f21e1ae4b858b6a329b717eaf420d4a1e79d9509 Mon Sep 17 00:00:00 2001
From: Guo_shaoshan <2055829622@qq.com>
Date: 星期一, 24 四月 2023 15:53:47 +0800
Subject: [PATCH] 自传和通讯录界面(未完成未修改)

---
 app/src/main/java/com/application/zhangshi_app_android/ui/function/GrowthExperienceActivity.java |  137 +++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 135 insertions(+), 2 deletions(-)

diff --git a/app/src/main/java/com/application/zhangshi_app_android/ui/function/GrowthExperienceActivity.java b/app/src/main/java/com/application/zhangshi_app_android/ui/function/GrowthExperienceActivity.java
index 5f08ed5..2c797a4 100644
--- a/app/src/main/java/com/application/zhangshi_app_android/ui/function/GrowthExperienceActivity.java
+++ b/app/src/main/java/com/application/zhangshi_app_android/ui/function/GrowthExperienceActivity.java
@@ -1,9 +1,30 @@
 package com.application.zhangshi_app_android.ui.function;
 
+import android.graphics.drawable.ColorDrawable;
+import android.view.View;
+import android.view.ViewGroup;
+import android.widget.PopupWindow;
+
+
+import androidx.lifecycle.Observer;
+import androidx.viewpager.widget.ViewPager;
+
+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.GrowthExperienceAbroadConditionRvAdapter;
+import com.application.zhangshi_app_android.adapter.GrowthExperienceHolderConditionRvAdapter;
+import com.application.zhangshi_app_android.adapter.GrowthExperiencePrimaryRvAdapter;
+import com.application.zhangshi_app_android.adapter.GrowthExperienceRelationshipRvAdapter;
+import com.application.zhangshi_app_android.bean.GrowthExperienceAbroadConditionBean;
+import com.application.zhangshi_app_android.bean.GrowthExperienceAutobiographyBean;
+import com.application.zhangshi_app_android.bean.GrowthExperienceBean;
+import com.application.zhangshi_app_android.bean.GrowthExperienceHolderConditionBean;
+import com.application.zhangshi_app_android.bean.GrowthExperienceRelationshipBean;
 import com.application.zhangshi_app_android.databinding.ActivityGrowthExperienceBinding;
 import com.application.zhangshi_app_android.ui.DLBaseActivity;
+import com.google.android.material.tabs.TabLayout;
+import java.util.List;
 
 /**
  * @author Gss
@@ -11,6 +32,10 @@
  * @desc 鎴愰暱缁忓巻 GrowthExperienceActivity
  */
 public class GrowthExperienceActivity extends DLBaseActivity<ActivityGrowthExperienceBinding,GrowthExperienceActivityViewModel> {
+    private GrowthExperiencePrimaryRvAdapter primaryRvAdapter;
+    private GrowthExperienceRelationshipRvAdapter relationshipRvAdapter;
+    private GrowthExperienceHolderConditionRvAdapter holderConditionRvAdapter;
+    private GrowthExperienceAbroadConditionRvAdapter abroadConditionRvAdapter;
 
     @Override
     public int getLayoutId() {
@@ -27,21 +52,129 @@
 
     }
 
+    // 璁剧疆閫変腑鏁堟灉
+
+
     @Override
     public void initView() {
+        primaryRvAdapter = new GrowthExperiencePrimaryRvAdapter(this);
+        relationshipRvAdapter = new GrowthExperienceRelationshipRvAdapter(this);
+        holderConditionRvAdapter = new GrowthExperienceHolderConditionRvAdapter(this );
+        abroadConditionRvAdapter = new GrowthExperienceAbroadConditionRvAdapter(this);
+
+
+        LinearItemDecoration itemDecoration = new LinearItemDecoration();
+        itemDecoration.setBottomSpace((int) getResources().getDimension(com.android.app_base.R.dimen.dp_12));
+        itemDecoration.setFirstTop((int) getResources().getDimension(com.android.app_base.R.dimen.dp_16));
+
+        binding.rvPrimary.addItemDecoration(itemDecoration);
+        binding.rvPrimary.setAdapter(primaryRvAdapter);
+        binding.rvRelationship.addItemDecoration(itemDecoration);
+        binding.rvRelationship.setAdapter(relationshipRvAdapter);
+        binding.rvCertificates.addItemDecoration(itemDecoration);
+        binding.rvCertificates.setAdapter(holderConditionRvAdapter);
+        binding.rvAbroad.addItemDecoration(itemDecoration);
+        binding.rvAbroad.setAdapter(abroadConditionRvAdapter);
+
+        //杩欓噷鐨則ab鏁伴噺灏辨槸鍚庡彴杩斿洖鐨勬暟鎹噺锛宼ab鐨勬爣棰樹篃鏄悗鍙拌繑鍥炵殑锛屼絾鏄瘂"id":1,"userId":110,"type":1,"content":"濠村効鏃舵湡鎴戝緢蹇箰"}鍚庡彴鐨勮繑鍥炴暟鎹病鏈夎繖涓椂闂存锛屼綘灏卞緱闂竴涓嬶紝鐪嬩笉鎳傚悧锛燂紵
+        binding.tabLayout.addTab(binding.tabLayout.newTab().setText("0-3宀侊紙濠村効鏈燂級"));
+        binding.tabLayout.addTab(binding.tabLayout.newTab().setText("3-6宀侊紙骞煎効鏈燂級"));
+        binding.tabLayout.addTab(binding.tabLayout.newTab().setText("6-9宀侊紙闈掑勾鏈燂級 "));
+
+        //灏变笉鐭ラ亾鑴戝瓙鍦ㄦ兂浠�涔�
+        binding.tabLayout.addOnTabSelectedListener(new TabLayout.OnTabSelectedListener() {
+            @Override
+            public void onTabSelected(TabLayout.Tab tab) {
+                // 褰撶敤鎴烽�変腑涓�涓� Tab 鏃跺洖璋�
+                // 杩欓噷鍙互鏍规嵁 Tab 鐨勪綅缃潵鍒囨崲鐩稿簲鐨勯〉闈�
+                switch (tab.getPosition()) {
+                    case 0:
+                        // 鍒囨崲鍒� 0-3 宀侀〉闈�
+                        break;
+                    case 1:
+                        // 鍒囨崲鍒� 3-6 宀侀〉闈�
+                        break;
+                    case 2:
+                        // 鍒囨崲鍒� 6-9 宀侀〉闈�
+                        break;
+                    default:
+                        break;
+                }
+            }
+            @Override
+            public void onTabUnselected(TabLayout.Tab tab) {
+                // 褰撶敤鎴峰彇娑堥�変腑涓�涓� Tab 鏃跺洖璋�
+            }
+
+            @Override
+            public void onTabReselected(TabLayout.Tab tab) {
+                // 褰撶敤鎴峰啀娆¢�変腑涓�涓凡缁忛�変腑鐨� Tab 鏃跺洖璋�
+            }
+        });
+        // 鍒涘缓 ViewPager 骞惰缃� Adapter
+        ViewPager viewPager = binding.viewPager;
+        // 灏� TabLayout 涓� ViewPager 鍏宠仈璧锋潵
+        binding.tabLayout.setupWithViewPager(viewPager);
 
     }
 
     @Override
     public void initData() {
-
+     viewModel.getInfo();
+      viewModel.getGrowthExperience();
+       viewModel.getRelation();
+       viewModel.getHolder();
+       viewModel.getAbroad();
+        viewModel.getGrowthExperienceAutobiography();
     }
 
 
     @Override
     public void initLiveDataObserve() {
+        viewModel.getPrimaryLiveData().observe(this, new Observer<List<GrowthExperienceBean>>() {
+            @Override
+            public void onChanged(List<GrowthExperienceBean> growthExperienceBeans) {
+                primaryRvAdapter.setData(growthExperienceBeans);
+            }
+        });
+        viewModel.getRelationLiveData().observe(this, new Observer<List<GrowthExperienceRelationshipBean>>() {
+            @Override
+            public void onChanged(List<GrowthExperienceRelationshipBean> growthExperienceRelationshipBeans) {
+                relationshipRvAdapter.setData(growthExperienceRelationshipBeans);
+            }
+        });
+        viewModel.getHolderLiveData().observe(this, new Observer<List<GrowthExperienceHolderConditionBean>>() {
+            @Override
+            public void onChanged(List<GrowthExperienceHolderConditionBean> growthExperienceHolderConditionBeans) {
+                holderConditionRvAdapter.setData(growthExperienceHolderConditionBeans);
+            }
+        });
+        viewModel.getAbroadLiveData().observe(this, new Observer<List<GrowthExperienceAbroadConditionBean>>() {
+            @Override
+            public void onChanged(List<GrowthExperienceAbroadConditionBean> growthExperienceAbroadConditionBeans) {
+                abroadConditionRvAdapter.setData(growthExperienceAbroadConditionBeans);
+            }
+        });
 
     }
 
-
+    private PopupWindow initPopUpWindow(View view){
+        PopupWindow popupWindow = new PopupWindow(this);
+        // 璁剧疆甯冨眬鏂囦欢
+        popupWindow.setContentView(view);
+        // 涓轰簡閬垮厤閮ㄥ垎鏈哄瀷涓嶆樉绀猴紝闇�瑕侀噸鏂拌缃竴涓嬪楂�
+        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_add);
+        // 璁剧疆pop鑾峰彇鐒︾偣锛屽鏋滀负false鐐瑰嚮杩斿洖鎸夐挳浼氶��鍑哄綋鍓岮ctivity锛屽鏋減op涓湁Editor鐨勮瘽锛宖ocusable蹇呴』瑕佷负true
+        popupWindow.setFocusable(true);
+        // 璁剧疆pop鍙偣鍑伙紝涓篺alse鐐瑰嚮浜嬩欢鏃犳晥锛岄粯璁や负true
+        popupWindow.setTouchable(true);
+        // 璁剧疆鐐瑰嚮pop澶栦晶娑堝け锛岄粯璁や负false锛涘湪focusable涓簍rue鏃剁偣鍑诲渚у缁堟秷澶�
+        popupWindow.setOutsideTouchable(false);
+        return popupWindow;
+    }
 }

--
Gitblit v1.9.1