Android屏幕区域划分及尺寸获取

本文详细介绍了Android屏幕的五个区域划分:整个屏幕、应用程序区、应用程序区内容区、标题栏以及状态栏,帮助开发者理解和获取不同区域的尺寸。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Android屏幕可以划分为五个区域

1. 整个屏幕

         获取方法为getRealSize或getRealMetrics,或直接从根窗口DecorView中获取
         1)方法1
        Point outSize = new Point();
		getWindowManager().getDefaultDisplay().getRealSize(outSize);
		int x = outSize.x;
		int y = outSize.y;
		 2)方法2
		DisplayMetrics outMetrics = new DisplayMetrics();
		getWindowManager().getDefaultDisplay().getRealMetrics(outMetrics);
		int widthPixel = outMetrics.widthPixels;
		int heightPixel = outMetrics.heightPixels;
		 3)方法3
		 DecorView   view=getWindow().getDecorView();
         int width = view.getWidth();         //getWidth方法可能是过时了,不过不要紧,你输入的时候IDE会提示修改
         int height = view.getHeight();      //getHeight方法可能是过时了,不过不要紧,你输入的时候IDE会提示修改

在这里插入图片描述

2. 应用程序区

         获取方法为getSize或getMetrics,即上述屏幕方法中去掉Real,或直接从根窗口DecorView中获取
		1)方法1
		Display defaultDisplay = getWindowManager().getDefaultDisplay();
	    Point point = new Point();
	    defaultDisplay.getSize(point);
	    int x = point.x;
	    int y = point.y;
	    2)方法2
	    Rect outSize = new Rect();
	    getWindowManager().getDefaultDisplay().getRectSize(outSize);
	    int left = outSize.left;
	    int top = outSize.top;
	    int right = outSize.right;
	    int bottom = outSize.bottom;
	    3)方法3
	    DisplayMetrics outMetrics = new DisplayMetrics();
	    getWindowManager().getDefaultDisplay().getMetrics(outMetrics);
	    int widthPixels = outMetrics.widthPixels;
	    int heightPixels = outMetrics.heightPixels;
		4)方法4
		Rect outRect = new Rect();
        View view = getWindow().getDecorView();
        view.getWindowVisibleDisplayFrame(outRect);
        int width = outRect.width();
        int height = outRect.height();

在这里插入图片描述

3. 应用程序区内容区

         View view2 = getWindow().findViewById(Window.ID_ANDROID_CONTENT);
         int width = view2.getWidth();
         int height = view2.getHeight();

在这里插入图片描述

4. 标题栏及状态栏

	用以上获取的各区域相减即可得出

状态栏 标题栏

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值