【发布时间】:2015-01-16 08:03:46
【问题描述】:
我想获取标题栏高度(不是状态栏)
我需要这个才能知道应用可以使用的真实高度。
我在 SO 上看到了一些代码,我尝试了一下,它返回了 height=0。
所以,我进行了更多搜索,发现我必须将它放在一个可运行文件中并使用延迟后调用它。
代码如下:
Handler mHandler = new Handler();
Runnable r = new Runnable() {
@Override
public void run() {
Rect frame = new Rect();
getWindow().getDecorView().getWindowVisibleDisplayFrame(frame);
int titleHeight = frame.top;
Log.d(TAG, titleHeight);
}
};
mHandler.postDelayed (r, 200);
这是有效的。 Log.D 显示正确的高度,但现在出现了一个新问题。
我无法在我的 onCreate 中使用 titleHeight 变量进行进一步编程。
怎么办?
谢谢, 阿杰
【问题讨论】: