如何获取ActionBar的高度?

215

我正在尝试获取每次创建活动时 ActionBar(使用Sherlock)的高度(特别是处理旋转时ActionBar高度可能会发生变化的配置更改)。

为此,我使用方法 ActionBar.getHeight(),该方法仅在 ActionBar 显示时起作用。

当第一次创建第一个活动时,我可以在 onCreateOptionsMenu 回调中调用 getHeight()。但此方法不会被再次调用。

所以我的问题是,我何时可以调用 getHeight() 并确保它不返回 0 呢? 或者如果不可能,如何设置 ActionBar 的高度?

21个回答

0
一个简单的方法来找到ActionBar的高度是从Activity的onPrepareOptionMenu方法中获取。
@Override
public boolean onPrepareOptionsMenu(Menu menu) {
           ....
           int actionBarHeight = getActionBar().getHeight());
           .....
    }

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接