| | |
| | | package com.application.zhangshi_app_android.ui.function; |
| | | |
| | | import android.content.Intent; |
| | | import android.os.Bundle; |
| | | import android.view.View; |
| | | import android.widget.PopupWindow; |
| | | |
| | | import com.android.app_base.base.view.BaseFragment; |
| | | import androidx.fragment.app.Fragment; |
| | | import androidx.fragment.app.FragmentTransaction; |
| | | import androidx.lifecycle.Observer; |
| | | |
| | | import com.android.app_base.manager.AppManager; |
| | | import com.android.app_base.utils.ScreenSizeUtils; |
| | | import com.application.zhangshi_app_android.BR; |
| | | import com.application.zhangshi_app_android.R; |
| | | 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.home.HomeFragment; |
| | | import com.application.zhangshi_app_android.ui.main.MainActivity; |
| | | |
| | | import java.io.Serializable; |
| | | import java.util.ArrayList; |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * @author Ljj |
| | | * @date 2023.03.15. 20:14 |
| | | * @desc 功能 Fragment |
| | | */ |
| | | public class FunctionFragment extends BaseFragment<FragmentFunctionBinding,FunctionFragmentViewModel> { |
| | | public FunctionFragment() { |
| | | public class FunctionFragment extends DLBaseFragment<FragmentFunctionBinding,FunctionFragmentViewModel> { |
| | | |
| | | private PopupWindow mOperatePopupWindow; |
| | | private ImageCarouselFragment imageCarouselFragment; |
| | | private VideoCarouselFragment videoCarouselFragment; |
| | | |
| | | private FunctionFragment() { |
| | | } |
| | | |
| | | public static FunctionFragment newInstance() { |
| | |
| | | |
| | | @Override |
| | | protected void initView() { |
| | | binding.layoutHomeRootNet.setOnClickListener(new View.OnClickListener() { |
| | | @Override |
| | | public void onClick(View v) { |
| | | MainActivity.start(getSelfActivity(), HomeFragment.class); |
| | | } |
| | | }); |
| | | binding.layoutFamilyMemorabilia.setOnClickListener(new View.OnClickListener() { |
| | | @Override |
| | | public void onClick(View view) { |
| | |
| | | AppManager.getAppManager().startActivity(FamilyAssetsActivity.class); |
| | | } |
| | | }); |
| | | binding.layoutHomeDevices.setOnClickListener(new View.OnClickListener() { |
| | | @Override |
| | | public void onClick(View view) { |
| | | AppManager.getAppManager().startActivity(HomeDevicesActivity.class); |
| | | } |
| | | binding.layoutHomeDevices.setOnClickListener(view -> { |
| | | AppManager.getAppManager().startActivity(HomeDevicesActivity.class); |
| | | }); |
| | | binding.layoutGrowingUp.setOnClickListener(new View.OnClickListener() { |
| | | @Override |
| | | public void onClick(View view) { |
| | | AppManager.getAppManager().startActivity(GrowthExperienceActivity.class); |
| | | } |
| | | binding.layoutGrowingUp.setOnClickListener(view -> { |
| | | AppManager.getAppManager().startActivity(GrowthExperienceActivity.class); |
| | | }); |
| | | binding.layoutHonorCollection.setOnClickListener(v->{ |
| | | AppManager.getAppManager().startActivity(HonorCollectionActivity.class); |
| | |
| | | binding.layoutMarriage.setOnClickListener(v->{ |
| | | AppManager.getAppManager().startActivity(MarriageActivity.class); |
| | | }); |
| | | binding.layoutHealthCare.setOnClickListener(v->{ |
| | | AppManager.getAppManager().startActivity(HealthCareActivity.class); |
| | | }); |
| | | binding.layoutPrivacy.setOnClickListener(v->{ |
| | | AppManager.getAppManager().startActivity(PrivacyActivity.class); |
| | | }); |
| | | binding.layoutTourism.setOnClickListener(v->{ |
| | | AppManager.getAppManager().startActivity(TourismActivity.class); |
| | | }); |
| | | binding.layoutContacts.setOnClickListener(v->{ |
| | | AppManager.getAppManager().startActivity(ContactsActivity.class); |
| | | }); |
| | | |
| | | binding.ivOperateSelect.setOnClickListener(new View.OnClickListener() { |
| | | @Override |
| | | public void onClick(View v) { |
| | | AppManager.getAppManager().startActivity(new Intent(getSelfActivity(),ImageSelectActivity.class).putExtra("flag",0).putExtra("list", (Serializable) imageCarouselFragment.getImageList())); |
| | | } |
| | | }); |
| | | |
| | | //右上角操作弹窗 |
| | | mOperatePopupWindow = initPopUpWindow(View.inflate(getSelfActivity(),R.layout.pop_switch_video_or_image,null)); |
| | | mOperatePopupWindow.getContentView().findViewById(R.id.tv_image).setOnClickListener(v -> { |
| | | mOperatePopupWindow.dismiss(); |
| | | imageCarouselFragment = ImageCarouselFragment.newInstance(); |
| | | replaceFragment(imageCarouselFragment); |
| | | imageCarouselFragment.setImageList(viewModel.getImageListLiveData().getValue()); |
| | | binding.ivOperateSelect.setOnClickListener(new View.OnClickListener() { |
| | | @Override |
| | | public void onClick(View v) { |
| | | AppManager.getAppManager().startActivity(new Intent(getSelfActivity(),ImageSelectActivity.class).putExtra("flag",0).putExtra("list", (Serializable) imageCarouselFragment.getImageList())); |
| | | } |
| | | }); |
| | | }); |
| | | mOperatePopupWindow.getContentView().findViewById(R.id.tv_video).setOnClickListener(v -> { |
| | | mOperatePopupWindow.dismiss(); |
| | | videoCarouselFragment = VideoCarouselFragment.newInstance(); |
| | | replaceFragment(videoCarouselFragment); |
| | | videoCarouselFragment.setVideoList(viewModel.getVideoListLiveData().getValue()); |
| | | binding.ivOperateSelect.setOnClickListener(new View.OnClickListener() { |
| | | @Override |
| | | public void onClick(View v) { |
| | | AppManager.getAppManager().startActivity(new Intent(getSelfActivity(),ImageSelectActivity.class).putExtra("flag",1).putExtra("list", (Serializable) videoCarouselFragment.getVideoList())); |
| | | } |
| | | |
| | | }); |
| | | }); |
| | | //点击弹出操作弹窗 |
| | | binding.ivOperate.setOnClickListener(v -> { |
| | | mOperatePopupWindow.showAsDropDown(binding.ivOperate,-ScreenSizeUtils.dip2px(getSelfActivity(),85) +binding.ivOperate.getWidth(),0); |
| | | }); |
| | | |
| | | imageCarouselFragment = ImageCarouselFragment.newInstance(); |
| | | replaceFragment(imageCarouselFragment); |
| | | } |
| | | public void replaceFragment(Fragment fragment){ |
| | | FragmentTransaction transaction = getSelfActivity().getSupportFragmentManager().beginTransaction(); |
| | | transaction.replace(R.id.layout_frame,fragment); |
| | | transaction.commit(); |
| | | } |
| | | @Override |
| | | protected void initData() { |
| | | viewModel.getBannerData(); |
| | | } |
| | | |
| | | @Override |
| | | protected void initData() { |
| | | |
| | | public void onResume() { |
| | | super.onResume(); |
| | | initData(); |
| | | } |
| | | |
| | | @Override |
| | | protected void initLiveDataObserve() { |
| | | viewModel.getImageListLiveData().observe(this, new Observer<List<BannerBean>>() { |
| | | @Override |
| | | public void onChanged(List<BannerBean> bannerBeans) { |
| | | if (imageCarouselFragment != null){ |
| | | imageCarouselFragment.setImageList(bannerBeans); |
| | | } |
| | | } |
| | | }); |
| | | viewModel.getVideoListLiveData().observe(this, new Observer<List<BannerBean>>() { |
| | | @Override |
| | | public void onChanged(List<BannerBean> bannerBeans) { |
| | | if (videoCarouselFragment != null){ |
| | | videoCarouselFragment.setVideoList(bannerBeans); |
| | | } |
| | | } |
| | | }); |
| | | |
| | | } |
| | | |
| | |
| | | protected boolean isStatusBarImmersionEnabled() { |
| | | return true; |
| | | } |
| | | |
| | | |
| | | } |
| | | |