📅  最后修改于: 2023-12-03 14:54:19.675000             🧑  作者: Mango
导航栏是我们常用的 UI 组件之一,获取导航栏高度是我们开发中常遇到的问题。在 iOS 和 Android 平台上,获取导航栏高度的方法有所不同。本文将为各位程序员介绍如何快速获取导航栏高度。
在 iOS 平台上,我们可以通过以下代码获取导航栏高度:
CGFloat navHeight = self.navigationController.navigationBar.frame.size.height;
这里 self.navigationController
是指当前视图所在的导航控制器。
在 Android 平台上,我们可以通过以下代码获取导航栏高度:
TypedValue tv = new TypedValue();
if (getTheme().resolveAttribute(android.R.attr.actionBarSize, tv, true))
{
int actionBarHeight = TypedValue.complexToDimensionPixelSize(tv.data,getResources().getDisplayMetrics());
}
这里我们使用 TypedValue
获取了 android.R.attr.actionBarSize
的值,并通过 TypedValue.complexToDimensionPixelSize
将其转化为像素值。
通过上述代码片段,我们可以快速获取导航栏高度。在 iOS 平台上,我们可以通过 self.navigationController.navigationBar.frame.size.height
获取。在 Android 平台上,我们可以通过使用 TypedValue
获取 android.R.attr.actionBarSize
的值,并将其转化为像素值。