android - Android 支持库中的 ActionBar#setDefaultDisplayHomeAsUpEnabled 是什么?

标签 android android-actionbar android-support-library

我知道 setDisplayHomeAsUpEnabled 的作用,但是 setDefaultDisplayHomeAsUpEnabled 是什么,我只能想知道。没有找到文档,除了正在使用之外找不到任何东西。

最佳答案

此方法仅在Support Action Bar中可用,在Android 3之后可用的“原生”ActionBar类中不可用。更重要的是,它在源代码中用@hide注释,意味着它是不是第三方开发人员的官方 API 的一部分。这就是为什么谷歌没有记录它的原因。你不应该使用它。

深入研究源代码,我发现了在 WindowDecorActionBar 中实现的方法:

public void setDefaultDisplayHomeAsUpEnabled(boolean enable) {
    if (!mDisplayHomeAsUpSet) {
        setDisplayHomeAsUpEnabled(enable);
    }
}

所以基本上它与使用 setDisplayHomeAsUpEnabled 完全相同,但前提是该值尚未使用上述函数手动设置。

tldr:您应该始终使用 setDisplayHomeAsUpEnabled 并忽略默认方法。

关于android - Android 支持库中的 ActionBar#setDefaultDisplayHomeAsUpEnabled 是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54157273/

相关文章:

android - 当主代码在 jar 中时使用 ProGuard

java - Android 绘图尺寸不缩放

android - 当我在 android 中使用 ADB 时,如何获取恢复出厂设置的日期?

android - ActionBar 中的 Logo 左对齐

android - 设置 Sherlock ActionBar 的标题

java - 如何在旧的 Android API 上强制执行操作栏设置图标

java - Android - 使用支持库的 Material Design 中的 TextView

Android Studio 2.3 Beta 1 + 支持 25.1.0 = 预览损坏

android - 为 api 26 (Android) 设置 Gradle

android - 将图像设置为全屏 HTML