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