android– 在不使用“黑客”方法的情况下在 *** 作栏中显示三点菜单项的最佳方法

android– 在不使用“黑客”方法的情况下在 *** 作栏中显示三点菜单项的最佳方法,第1张

概述我有点困惑.我想在三点项目中显示 *** 作栏的其余项目.但是当物品数量增加时我总是会失去它!谷歌搜索后,我发现这个“有用”的方法:ASMUIRTIANSWERprivatevoidgetOverflowMenu(){try{ViewConfigurationconfig=ViewConfiguration.get(this);FieldmenuKey

我有点困惑.我想在三点项目中显示 *** 作栏的其余项目.但是当物品数量增加时我总是会失去它!谷歌搜索后,我发现这个“有用”的方法:ASMUIRTI ANSWER

private voID getoverflowMenu() {    try {       VIEwConfiguration config = VIEwConfiguration.get(this);       FIEld menuKeyFIEld = VIEwConfiguration.class.getDeclaredFIEld("sHasPermanentMenuKey");       if(menuKeyFIEld != null) {           menuKeyFIEld.setAccessible(true);           menuKeyFIEld.setBoolean(config, false);       }   } catch (Exception e) {       e.printstacktrace();   } }

我按照自己的意愿测试了它.不幸的是,为了更好地理解这种方法的作用,我发现它是an awful hack that breaks consistency with the rest of the apps on the platform(adamp的评论)

有人可以告诉我为什么这是一个黑客,什么是最好的解决方案?

解决方法:

这很简单.有些设备有其他菜单按钮没有.在带有菜单按钮的设备上,按下菜单按钮时会显示溢出的 *** 作项目,而在按下三个点时不会显示它们.这就是设备制造商如何设计他们的设备,并且任何强迫他们以不同方式进行 *** 作的尝试都被视为“黑客”.这是不一致的,因为同一设备上的其他应用程序的做法不同.

这一切都归结为这样一个问题:您是希望跨单个设备在不同设备上保持一致性,还是在单个设备上保持所有应用程序的一致性.因为应用程序开发最终应该是关于用户的,所以IMO单个设备(对于一个用户)的一致性才是最重要的.

解决这个问题的最好方法是使用androID:showAsAction标签,让AndroID决定,如何显示Actionbar中的动作,是否需要溢出菜单,以及是否用户如何访问溢出的动作项.

总结

以上是内存溢出为你收集整理的android – 在不使用“黑客”方法的情况下在 *** 作栏中显示三点菜单项的最佳方法全部内容,希望文章能够帮你解决android – 在不使用“黑客”方法的情况下在 *** 作栏中显示三点菜单项的最佳方法所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1115579.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-29
下一篇 2022-05-29

发表评论

登录后才能评论

评论列表(0条)

保存