【发布时间】:2018-03-08 12:59:10
【问题描述】:
我正在尝试在 OnAttachedToWindow 中更改我的活动的大小,以便它看起来是浮动的。为了计算它的新尺寸,我需要获取装饰视图的可见显示框架。但它返回 0。
我实际上需要获取状态栏的高度。我遵循了这个指南:How to get Android screen height minus status bar in pixel?
但它不起作用。
如何获取 OnAttachedToWindow 中状态栏(或可见显示框)的高度?
根据 Android 文档,我认为这是可能的,因为显然它已被附加,并且可以开始绘图了。
这是我的活动代码:
public override void OnAttachedToWindow()
{
base.OnAttachedToWindow();
var decorView = Window.DecorView;
var rect = new Rect();
decorView.GetWindowVisibleDisplayFrame(rect);
// rect is now 0
var lp = (WindowManagerLayoutParams)decorView.LayoutParameters;
// change some stuff...
WindowManager.UpdateViewLayout(decorView, lp);
}
【问题讨论】:
标签: android android-layout xamarin xamarin.android