Android popupMenu

 

复制代码
        popupMenu = new PopupMenu(ActivityHousesNumList.this, imageViewhousesnum1);
        popupMenu.getMenuInflater().inflate(R.menu.menu_device_config, popupMenu.getMenu());
        popupMenu.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() {
            @Override
            public boolean onMenuItemClick(MenuItem menuItem) {
                switch (menuItem.getItemId()) {
                    case R.id.action1:
                        try {

                            Log.e(TAG, "onMenuItemClick: 111111111111111111111111" );

                            JSONObject jsonObject = new JSONObject();
                            String stringValue = "";
                            jsonObject.put("AreaInfo", AreaInfo);
                            jsonObject.put("BuildingNum", BuildingNum);
                            jsonObject.put("UnitBuildingNum", UnitBuildingNum);

                            stringValue = jsonObject.toString();

                            Intent intent = new Intent(ActivityHousesNumList.this, ActivityDeviceUpdataConfigHouses.class);
                            intent.putExtra("data",stringValue);
                            startActivity(intent);
                            finish();

                        }catch (JSONException var4) {
                            var4.printStackTrace();
                        }
                        catch(Exception err) { }
                        break;
                }
                return false;
            }
        });
//        popupMenu.getMenu().removeItem(R.id.action3);
//        popupMenu.getMenu().findItem(R.id.action1).setTitle("设备配置");
//        popupMenu.getMenu().findItem(R.id.action2).setVisible(false);

        ClassGeneralMethod.sharedCenter().MenuShowIcons(popupMenu);
复制代码

 

显示图片问题

复制代码
    public void MenuShowIcons(PopupMenu popupMenu)
    {
        try {
            Class<?> classPopupMenu = Class.forName(popupMenu.getClass()
                    .getName());
            Field mPopup = classPopupMenu.getDeclaredField("mPopup");
            mPopup.setAccessible(true);
            Object menuPopupHelper = mPopup.get(popupMenu);
            Class<?> classPopupHelper = Class.forName(menuPopupHelper
                    .getClass().getName());
            Method setForceIcons = classPopupHelper.getMethod(
                    "setForceShowIcon", boolean.class);
            setForceIcons.invoke(menuPopupHelper, true);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
复制代码

 

posted on   广源时代  阅读(273)  评论(0编辑  收藏  举报

编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具

导航

支付宝 QQ群
点击右上角即可分享
微信分享提示