From 15cd434674051e5d29215b47862686c773625fd4 Mon Sep 17 00:00:00 2001 From: Linjiajia <319408893@qq.com> Date: 星期五, 28 四月 2023 23:20:02 +0800 Subject: [PATCH] 代码提交 --- app/src/main/java/com/application/zhangshi_app_android/ui/function/ContactsActivity.java | 91 +++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 91 insertions(+), 0 deletions(-) diff --git a/app/src/main/java/com/application/zhangshi_app_android/ui/function/ContactsActivity.java b/app/src/main/java/com/application/zhangshi_app_android/ui/function/ContactsActivity.java new file mode 100644 index 0000000..d160297 --- /dev/null +++ b/app/src/main/java/com/application/zhangshi_app_android/ui/function/ContactsActivity.java @@ -0,0 +1,91 @@ +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.databinding.library.baseAdapters.BR; + +import com.android.app_base.utils.ScreenSizeUtils; +import com.android.app_base.widget.LinearItemDecoration; +import com.application.zhangshi_app_android.R; + +import com.application.zhangshi_app_android.adapter.ContactsRvAdapter; +import com.application.zhangshi_app_android.databinding.ActivityContactsBinding; +; +import com.application.zhangshi_app_android.ui.DLBaseActivity; + +/** + * @author Gss + * @date 2023.04.18. 20:33 + * @desc 閫氳褰� + */ +public class ContactsActivity extends DLBaseActivity<ActivityContactsBinding,ContactsActivityViewModel> { + private ContactsRvAdapter adapter; + private PopupWindow mOperatePopupWindow; + @Override + public int getLayoutId() { + return R.layout.activity_contacts; + } + + @Override + public int getVariableId() { + return BR.viewModel; + } + + @Override + public void initParam() { + + } + + @Override + public void initView() { + adapter = new ContactsRvAdapter(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)); + binding.recyclerView.addItemDecoration(itemDecoration); + binding.recyclerView.setAdapter(adapter); + + mOperatePopupWindow = initPopUpWindow(View.inflate(this,R.layout.pop_operate,null)); + mOperatePopupWindow.getContentView().findViewById(R.id.layout_add).setVisibility(View.GONE); + mOperatePopupWindow.getContentView().findViewById(R.id.layout_select).setVisibility(View.GONE); + + binding.ivOperate.setOnClickListener(v -> { + mOperatePopupWindow.showAsDropDown(binding.ivOperate,-ScreenSizeUtils.dip2px(this,85) +binding.ivOperate.getWidth(),0); + }); + } + + @Override + public void initData() { +// viewModel.getFamilyContacts(); + } + + @Override + public void initLiveDataObserve() { +// viewModel.getDataListLiveData().observe(this, familyContactsBeans -> { +// adapter.setData(familyContactsBeans); +// }); + } + + public 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_operate); + // 璁剧疆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