فهرست منبع

0.0.45.beta25

kongzue 3 سال پیش
والد
کامیت
19e3d3318d

+ 8 - 4
DialogX/src/main/java/com/kongzue/dialogx/dialogs/PopMenu.java

@@ -80,7 +80,8 @@ public class PopMenu extends BaseDialog {
     }
     
     public PopMenu(View baseView, List<CharSequence> menuList) {
-        this.menuList = menuList;
+        this.menuList = new ArrayList<>();
+        this.menuList.addAll(menuList);
         this.baseView = baseView;
     }
     
@@ -111,7 +112,8 @@ public class PopMenu extends BaseDialog {
     
     public PopMenu(View baseView, List<CharSequence> menuList, OnBindView<PopMenu> onBindView) {
         this.baseView = baseView;
-        this.menuList = menuList;
+        this.menuList = new ArrayList<>();
+        this.menuList.addAll(menuList);
         this.onBindView = onBindView;
     }
     
@@ -123,7 +125,8 @@ public class PopMenu extends BaseDialog {
     }
     
     public PopMenu(List<CharSequence> menuList, OnBindView<PopMenu> onBindView) {
-        this.menuList = menuList;
+        this.menuList = new ArrayList<>();
+        this.menuList.addAll(menuList);
         this.onBindView = onBindView;
     }
     
@@ -709,7 +712,8 @@ public class PopMenu extends BaseDialog {
     }
     
     public PopMenu setMenuList(List<CharSequence> menuList) {
-        this.menuList = menuList;
+        this.menuList = new ArrayList<>();
+        this.menuList.addAll(menuList);
         refreshUI();
         return this;
     }

+ 28 - 49
app/src/main/java/com/kongzue/dialogxdemo/activity/MainActivity.java

@@ -333,55 +333,34 @@ public class MainActivity extends BaseActivity {
         btnContextMenu.setOnClickListener(new View.OnClickListener() {
             @Override
             public void onClick(View v) {
-//                PopMenu.show(new String[]{"添加", "编辑", "删除", "分享"})
-//                        .setOnMenuItemClickListener(new OnMenuItemClickListener<PopMenu>() {
-//                            @Override
-//                            public boolean onClick(PopMenu dialog, CharSequence text, int index) {
-//                                if (index==0){
-//                                    dialog.setMenuList(new String[]{"A","B","C"});
-//                                    return true;
-//                                }
-//                                return false;
-//                            }
-//                        })
-//                        .setOnIconChangeCallBack(new OnIconChangeCallBack<PopMenu>(true) {
-//                            @Override
-//                            public int getIcon(PopMenu dialog, int index, String menuText) {
-//                                switch (menuText) {
-//                                    case "添加":
-//                                        return R.mipmap.img_dialogx_demo_add;
-//                                    case "编辑":
-//                                        return R.mipmap.img_dialogx_demo_edit;
-//                                    case "删除":
-//                                        return R.mipmap.img_dialogx_demo_delete;
-//                                    case "分享":
-//                                        return R.mipmap.img_dialogx_demo_share;
-//                                    default:
-//                                        return 0;
-//                                }
-//                            }
-//                        });
-                List<CharSequence> items = new ArrayList();
-                items.add("选项1");
-                items.add("选项2");
-                items.add("选项3");
-                PopMenu.show(items);
-    
-                //会造成闪退的代码
-                new Thread() {
-                    @Override
-                    public void run() {
-                        try {
-                            sleep(1000);
-                        } catch (InterruptedException e) {
-                            e.printStackTrace();
-                        }
-                        for (int i = 0; i < 10000; i++) {
-                            items.clear();
-                            items.add("选项4");
-                        }
-                    }
-                }.start();
+                PopMenu.show(new String[]{"添加", "编辑", "删除", "分享"})
+                        .setOnMenuItemClickListener(new OnMenuItemClickListener<PopMenu>() {
+                            @Override
+                            public boolean onClick(PopMenu dialog, CharSequence text, int index) {
+                                if (index==0){
+                                    dialog.setMenuList(new String[]{"A","B","C"});
+                                    return true;
+                                }
+                                return false;
+                            }
+                        })
+                        .setOnIconChangeCallBack(new OnIconChangeCallBack<PopMenu>(true) {
+                            @Override
+                            public int getIcon(PopMenu dialog, int index, String menuText) {
+                                switch (menuText) {
+                                    case "添加":
+                                        return R.mipmap.img_dialogx_demo_add;
+                                    case "编辑":
+                                        return R.mipmap.img_dialogx_demo_edit;
+                                    case "删除":
+                                        return R.mipmap.img_dialogx_demo_delete;
+                                    case "分享":
+                                        return R.mipmap.img_dialogx_demo_share;
+                                    default:
+                                        return 0;
+                                }
+                            }
+                        });
             }
         });
         

+ 1 - 1
gradle.properties

@@ -19,5 +19,5 @@ android.useAndroidX=true
 # Automatically convert third-party libraries to use AndroidX
 android.enableJetifier=true
 
-BUILD_VERSION=0.0.45.beta24
+BUILD_VERSION=0.0.45.beta25
 BUILD_VERSION_INT=44