package com.application.zhangshi_app_android.ui.function;
|
|
import android.content.Intent;
|
import android.view.View;
|
import android.widget.PopupWindow;
|
|
import androidx.recyclerview.widget.GridLayoutManager;
|
|
import com.android.app_base.manager.AppManager;
|
import com.android.app_base.utils.ScreenSizeUtils;
|
import com.android.app_base.utils.Utils;
|
import com.android.app_base.widget.GridSpaceItemDecoration;
|
import com.application.zhangshi_app_android.BR;
|
import com.application.zhangshi_app_android.R;
|
import com.application.zhangshi_app_android.adapter.PetImageRvAdapter;
|
import com.application.zhangshi_app_android.bean.FamilyAssetsBean;
|
import com.application.zhangshi_app_android.bean.PetBean;
|
import com.application.zhangshi_app_android.databinding.ActivityPetDetailBinding;
|
import com.application.zhangshi_app_android.ui.DLBaseActivity;
|
import com.application.zhangshi_app_android.ui.dialog.PetOwnerInfoDialog;
|
|
import java.util.List;
|
|
/**
|
* @author Ljj
|
* @date 2023.04.17. 18:21
|
* @desc
|
*/
|
public class PetDetailActivity extends DLBaseActivity<ActivityPetDetailBinding, PetDetailActivityViewModel> {
|
|
private PetImageRvAdapter adapter;
|
private PopupWindow popupWindow;
|
|
PetOwnerInfoDialog.Builder petOwnerInfoDialogBuilder;
|
@Override
|
public int getLayoutId() {
|
return R.layout.activity_pet_detail;
|
}
|
|
@Override
|
public int getVariableId() {
|
return BR.viewModel;
|
}
|
|
@Override
|
public void initParam() {
|
if (getIntent().hasExtra("bean")){
|
viewModel.getBeanLiveData().setValue((PetBean) getIntent().getSerializableExtra("bean"));
|
}
|
}
|
|
@Override
|
public void initView() {
|
adapter = new PetImageRvAdapter(this);
|
GridSpaceItemDecoration decoration = new GridSpaceItemDecoration(3,ScreenSizeUtils.dip2px(this,10),ScreenSizeUtils.dip2px(this,20));
|
binding.recyclerView.addItemDecoration(decoration);
|
binding.recyclerView.setLayoutManager(new GridLayoutManager(this,3));
|
binding.recyclerView.setAdapter(adapter);
|
|
View view = View.inflate(this,R.layout.pop_operate_pet,null);
|
popupWindow = initPopUpWindow(view);
|
setOnClickListener(
|
view.findViewById(R.id.tv_owner_info),
|
view.findViewById(R.id.tv_pet_memo)
|
);
|
|
binding.ivOperate.setOnClickListener(v -> {
|
popupWindow.showAsDropDown(binding.ivOperate,-ScreenSizeUtils.dip2px(this,85) +binding.ivOperate.getWidth(),0);
|
});
|
|
petOwnerInfoDialogBuilder = new PetOwnerInfoDialog.Builder(this);
|
}
|
|
@Override
|
public void initData() {
|
}
|
|
@Override
|
public void initLiveDataObserve() {
|
viewModel.getBeanLiveData().observe(this, bean -> {
|
if (bean != null){
|
List<String> list = Utils.splitString2List(bean.getHeadPicture(),",");
|
list.addAll(Utils.splitString2List(bean.getFullPicture(),","));
|
adapter.setData(list);
|
petOwnerInfoDialogBuilder.setBean(bean);
|
}
|
});
|
}
|
|
@Override
|
public void onClick(View v) {
|
super.onClick(v);
|
int id = v.getId();
|
if (id == R.id.tv_owner_info){
|
popupWindow.dismiss();
|
petOwnerInfoDialogBuilder.show();
|
}else if (id == R.id.tv_pet_memo){
|
popupWindow.dismiss();
|
AppManager.getAppManager().startActivity(new Intent(this,PetMemoActivity.class).putExtra("bean",viewModel.getBeanLiveData().getValue()));
|
}
|
}
|
}
|