我有一个弹出式菜单,我只想得到它的尺寸在我的展示视图中使用我的导游。我在任何地方都找不到确定这些尺寸(高度和宽度)的方法。
private void initPopUpMenu() {
PopupMenu popupMenu = new PopupMenu(TimelineActivity.this, menuIcon);
popupMenu.getMenuInflater().inflate(R.menu.menu_timeline, popupMenu.getMenu());
}
如何从这个结构中检索宽度和高度?这是一个包含5个项目的简单菜单资源
2条答案
按热度按时间jljoyd4f1#
最好的解决办法是使用
ListPopupWindow
而不是PopupMenu
哪个有getWidth()
以及getHeight()
方法得到它的维数。但是,如果你真的想用PopupMenu
,可能棘手的方法是使用Reflection
访问其内部ListView
,因为中没有可用的方法PopupMenu
访问内容视图。用法:
方法:
内部版本.gradle:
结果:
i/system.out:弹出菜单尺寸:539 x 660
zqdjd7g92#
可以将自定义布局用于
PopupWindow
然后测量