自定义 View 设置为全屏时的高度比 DisplayMetrics 获得的高度大
通过使用代码:
DisplayMetrics dm = getResources().getDisplayMetrics();
int screenWidth = dm.widthPixels;
int screenHeight = dm.heightPixels;
Log.e(TAG, "W = " + dm.widthPixels + ", H = " + dm.heightPixels);
获得到屏幕的宽和高,在我测试的手机上,screenWidth = 1440,screenHeight = 2400:
然后,自定义 View
,设置 layout_width
和 layout_height
都是 match_parent
:
android:layout_width="match_parent"
android:layout_height="match_parent"
在 onDraw
方法里面,输出该 View 的 width 和 height:
@Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
W = this.getWidth();
H = this.getHeight();
Log.e("RegionSelectorView", "W: " + W + ", H: " + H);
}
发现的输出都是:
请问大家这是为什么,该如何解决这个不一致的问题?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
没记错的话,第一个方法不包含状态栏高度