package com.application.zhangshi_app_android.ui.function; import android.view.View; import android.view.ViewGroup; import android.widget.EditText; import androidx.recyclerview.widget.GridLayoutManager; import com.android.app_base.utils.Utils; import com.application.zhangshi_app_android.BR; import com.application.zhangshi_app_android.R; import com.application.zhangshi_app_android.adapter.ElectronicFileAddAdapter; import com.application.zhangshi_app_android.bean.PetMemoBean; import com.application.zhangshi_app_android.databinding.ActivityPetMemoDetailBinding; import com.application.zhangshi_app_android.ui.DLBaseActivity; import com.hjq.bar.TitleBar; /** * @author Ljj * @date 2023.04.25. 21:36 * @desc 宠物备忘录详情 (仅供查看) */ public class PetMemoDetailActivity extends DLBaseActivity { private ElectronicFileAddAdapter adapter; @Override public int getLayoutId() { return R.layout.activity_pet_memo_detail; } @Override public int getVariableId() { return BR.viewModel; } @Override public void initParam() { if (getIntent().hasExtra("bean")){ viewModel.getBeanLiveData().setValue((PetMemoBean) getIntent().getSerializableExtra("bean")); } } @Override public void initView() { adapter = new ElectronicFileAddAdapter(this); GridLayoutManager gridLayoutManager = new GridLayoutManager(this, 3); binding.rvImage.setLayoutManager(gridLayoutManager); binding.rvImage.setNestedScrollingEnabled(false); binding.rvImage.setAdapter(adapter); setIsEdited(false); } @Override public void initData() { } @Override public void initLiveDataObserve() { viewModel.getBeanLiveData().observe(this,bean -> { if (bean!=null){ adapter.setData(Utils.splitString2List(bean.getUrl(),",")); } }); } public void setIsEdited(boolean isEdited){ disableAllEditText(getContentView(),isEdited); adapter.setIsEdited(isEdited); } public void disableAllEditText(ViewGroup viewGroup, boolean isEdited) { for (int i = 0; i < viewGroup.getChildCount(); i++) { View child = viewGroup.getChildAt(i); if (child instanceof ViewGroup) { disableAllEditText((ViewGroup) child,isEdited); } else if (child instanceof EditText) { child.setEnabled(isEdited); child.setFocusable(isEdited); child.setFocusableInTouchMode(isEdited); if (!isEdited){ child.clearFocus(); } } } } @Override public void onLeftClick(TitleBar titleBar) { finish(); } }