| | |
| | | import android.view.ViewGroup; |
| | | import android.widget.PopupWindow; |
| | | |
| | | import androidx.databinding.DataBindingUtil; |
| | | |
| | | import com.android.app_base.utils.ScreenSizeUtils; |
| | | 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.FamilyAssetsRvAdapter; |
| | | 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 java.util.ArrayList; |
| | | import com.google.android.material.tabs.TabLayout; |
| | | import java.util.List; |
| | | |
| | | /** |
| | |
| | | * @desc 成长经历 GrowthExperienceActivity |
| | | */ |
| | | public class GrowthExperienceActivity extends DLBaseActivity<ActivityGrowthExperienceBinding,GrowthExperienceActivityViewModel> { |
| | | private GrowthExperiencePrimaryRvAdapter adapter; |
| | | |
| | | private GrowthExperiencePrimaryRvAdapter primaryRvAdapter; |
| | | private GrowthExperienceRelationshipRvAdapter relationshipRvAdapter; |
| | | private GrowthExperienceHolderConditionRvAdapter holderConditionRvAdapter; |
| | | private GrowthExperienceAbroadConditionRvAdapter abroadConditionRvAdapter; |
| | | |
| | | @Override |
| | | public int getLayoutId() { |
| | |
| | | |
| | | @Override |
| | | public void initParam() { |
| | | GrowthExperienceBean bean = new GrowthExperienceBean("name", "date", "content"); |
| | | List<GrowthExperienceBean> dataList=new ArrayList<>(); |
| | | dataList.add(new GrowthExperienceBean("2010-2016","**小学","张三")); |
| | | dataList.add(new GrowthExperienceBean("2017-2020","**中学","李四")); |
| | | adapter=new GrowthExperiencePrimaryRvAdapter(this,dataList); |
| | | |
| | | } |
| | | |
| | | // 设置选中效果 |
| | | |
| | | |
| | | @Override |
| | | public void initView() { |
| | | adapter = new GrowthExperiencePrimaryRvAdapter(this); |
| | | 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.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)); |
| | | itemDecoration.setFirstTop((int) getResources().getDimension(com.android.app_base.R.dimen.dp_16)); |
| | | |
| | | binding.rvPrimary.addItemDecoration(itemDecoration); |
| | | binding.rvPrimary.setAdapter(adapter); |
| | | binding.rvPrimary.setAdapter(primaryRvAdapter); |
| | | binding.rvRelationship.addItemDecoration(itemDecoration); |
| | | binding.rvRelationship.setAdapter(adapter); |
| | | binding.rvRelationship.setAdapter(relationshipRvAdapter); |
| | | binding.rvCertificates.addItemDecoration(itemDecoration); |
| | | binding.rvCertificates.setAdapter(adapter); |
| | | binding.rvCertificates.setAdapter(holderConditionRvAdapter); |
| | | binding.rvAbroad.addItemDecoration(itemDecoration); |
| | | binding.rvAbroad.setAdapter(adapter); |
| | | binding.rvAbroad.setAdapter(abroadConditionRvAdapter); |
| | | |
| | | //这里的tab数量就是后台返回的数据量,tab的标题也是后台返回的,但是{"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.getGrowthExperience(); |
| | | viewModel.getInfo(); |
| | | viewModel.getGrowthExperience(); |
| | | viewModel.getRelation(); |
| | | viewModel.getHolder(); |
| | | viewModel.getAbroad(); |
| | | viewModel.getGrowthExperienceAutobiography(); |
| | | } |
| | | |
| | | |
| | | @Override |
| | | public void initLiveDataObserve() { |
| | | ActivityGrowthExperienceBinding binding1= DataBindingUtil.setContentView(this,R.layout.activity_growth_experience); |
| | | ActivityGrowthExperienceBinding binding2= DataBindingUtil.setContentView(this,R.layout.activity_growth_experience); |
| | | ActivityGrowthExperienceBinding binding3= DataBindingUtil.setContentView(this,R.layout.activity_growth_experience); |
| | | ActivityGrowthExperienceBinding binding4= DataBindingUtil.setContentView(this,R.layout.activity_growth_experience); |
| | | |
| | | viewModel.getDataListLiveData().observe(this, GrowthExperienceBeans -> { |
| | | adapter.setData(GrowthExperienceBeans); |
| | | 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){ |