Android 自定义导航视图接受菜单资源

问题描述

我正在实现一个自定义导航视图,我想在其中接受一个菜单资源来描述菜单项。正如您在下面的代码片段中看到的,我正在使用一种解决方法获取菜单并扩充菜单资源

init {

        val attributes = context.theme.obtainStyledAttributes(attrs,R.styleable.TabNavigationView,0)

        try {
            val navigationItemsResource = attributes.getResourceId(R.styleable.TabNavigationView_menu_items,NO_MENU)
            // A work-around to a get a Menu instance
            val popupMenu = PopupMenu(context,null)
            val menu = popupMenu.menu
            MenuInflater(context).inflate(navigationItemsResource,menu)
            setNavigationMenu(menu)
        } finally {
            attributes.recycle()
        }
    }

在我的自定义视图中,是否有一种常规/非 hacky/官方方法来扩充 xml 中定义的菜单

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)