Android Studio - 只是无法让动作栏/溢出工作?

时间:2014-05-18 10:11:36

标签: android android-actionbar

我使用Android Studio(实际上是在Mac上),只使用真实设备

这只是4.1+。所有项目都是从新鲜的。

创建的

检查 - 我确实加载了支持和appcompat,尽管我能理解Gradle。 [A]

enter image description here

检查 - onCreateOptionsMenu等,看起来不错......

enter image description here

检查 - xml很好用。 (我完全理解showAsAction选项,并尝试了所有选项。)[B]关于使用文本或图标,我尝试了所有的排列。

enter image description here

那会发生什么?

当我在设备上运行它(10+测试)。只需显示尽可能多的操作栏项目(例如,5左右)。旋转等完美运作。

但它只是不会显示溢出图标!! WTF?它根本不会在任何地方显示缺少的三个或四个项目。

我已经尝试了所有这些"空白活动"和"全屏活动"。无论我做什么,它都不会显示@#$ @溢出。

它几乎就像图标在构建中没有可用的东西?

任何Android好友都可以解决这个问题吗?它真的是一个" WTF"时刻。提前谢谢。

我的解决方法...... https://stackoverflow.com/a/22855136/294884这很有效,但是你的Android人会嘲笑我这样做。

[A]:(请注意,我有两个build.gradle文件;我是在内部应用程序内部做的。/不会在外部文件上工作。)

[B]:(注意,一个常见的问题似乎是当人们不知道总是'以及' ifRoom' TBC时根本不是我的问题:我的问题是@ $ @#溢出根本就不会出现!!)


BTW适合任何刚接触Android的人......

https://stackoverflow.com/a/16046189/294884

扩展讨论可能非常有用。

4 个答案:

答案 0 :(得分:8)

按Android Studio左上角的“文件”,选择“项目结构...”。将打开一个对话框,左侧有一个模块列表。

选择项目的模块,转到“依赖关系”选项卡,按右侧的绿色“+”,在下一个对话框中选择“库依赖关系”,您将能够添加所需的库。

如果“支持v4”和“AppCompat”不可用,您应首先通过Android SDK Manager安装“Android支持库”和“Google Repository”。

enter image description here

答案 1 :(得分:6)

那将是我最好的客人。带硬件按钮的设备不显示3点菜单。

此外,如果项目是4.1+,您既不需要支持-v4也不需要appcompat-v7。那些可能会引起一些冲突。

链接到不同设备上按钮的Google说明: http://developer.android.com/design/patterns/compatibility.html

关于使用build.gradle文件或对话框,好吧,可能是的,但我已经习惯了gradle文件,甚至从未看过对话框,但我只是老了。 / p>


结果!

enter image description here

发现Dirty Hack强制溢出图标在具有硬件菜单按钮的设备上可见。

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();
    }
}

来源:http://www.tagwith.com/question_264107_overflow-menu-not-showed-at-action-bar

答案 2 :(得分:0)

在开始使用Android Studio时,我遇到了类似的问题,显示了操作栏图标。

奇怪的是,当我在设计屏幕中查看布局时,它确实显示了图标,但是当我尝试在实际设备或模拟器上运行应用程序时,它显示了3个点。

我知道即使在具有硬件设置按钮的设备上,我仍然会看到显示操作栏图标而不是3个点的应用程序。

最后唯一有帮助的是这样做: // compile'c​​om.android.support:appcompat-v7:21.0.0'

我在修复问题的gradle中评论了这个库依赖项。

答案 3 :(得分:0)

我有这样的东西,当我将我的项目移动到android studio时,所有操作栏项目如果显示在操作栏上,它们仅在按下硬件按钮菜单时显示为文本,并且当在nexus上运行时,三个点出现在操作栏的角落!

我尝试了此页面上建议的内容,但没有成功显示操作栏上的项目!

相关问题