Android 中状态栏、标题栏、View的大小及区分

原创 2013年12月04日 23:38:36

1、获得状态栏的高度(状态栏相对Window的位置):

Rect frame = new Rect();

getWindow().getDecorView().getWindowVisibleDisplayFrame(frame);

int statusBarHeight = frame.top;


2、获得mView中显示内容的Top (不包括标题栏,指的是相对Window的位置,即:没有标题栏的时候,指的是状态栏的bottom在Window中的坐标;有标题栏的时候指的是标题栏的bottom在Window中的坐标

getWindow().findViewById(Window.ID_ANDROID_CONTENT).getTop();  


3、获得view中显示内容,与window无关,只和父控件有关

如果布局文件中mView match_parent 那么top=0,bottom=mView.getHeight();


4、获得屏幕的宽高:

(1)

getResources().getDisplayMetrics().heightPixels;

getResources().getDisplayMetrics().widthPixels;

(2)

WindowManager wm = (WindowManager) this.getSystemService(Context.WINDOW_SERVICE);
int width = wm.getDefaultDisplay().getWidth();//屏幕宽度

int height = wm.getDefaultDisplay().getHeight();//屏幕高度

(3)

DisplayMetrics mDisplayMetrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(mDisplayMetrics);
int W = mDisplayMetrics.widthPixels;
int H = mDisplayMetrics.heightPixels;

(4)过时方法

Display mDisplay = getWindowManager().getDefaultDisplay();
int W = mDisplay.getWidth();
int H = mDisplay.getHeight();


版权声明:本文为博主原创文章,未经博主允许不得转载。

android 标题栏,状态栏和导航栏的区别

http://blog.csdn.net/baidu_26352053/article/details/53025912 标题栏是手机左上最顶上,显示中国移动,安全卫士,或者当前运行...
  • lu1024188315
  • lu1024188315
  • 2017年07月07日 14:40
  • 1006

android 标题栏 状态栏的隐藏

super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);getSupportActionBar().hide...
  • github_36637174
  • github_36637174
  • 2016年11月07日 14:52
  • 496

android 标题栏,状态栏和导航栏的区别

http://blog.csdn.net/baidu_26352053/article/details/53025912 标题栏是手机左上最顶上,显示中国移动,安全卫士,或者当前运行软件的地方,手机...
  • baidu_26352053
  • baidu_26352053
  • 2016年11月03日 21:17
  • 1419

Android沉浸式(侵入式)标题栏(状态栏)Status(一)

Android沉浸式(侵入式)标题栏(状态栏)Status(一)现在越来越多的APP设计采用这种称之为沉浸式状态栏(Status)的设计,这种沉浸式状态栏又称之“侵入式”状态栏或标题栏,在Andr...
  • zhangphil
  • zhangphil
  • 2016年09月22日 14:35
  • 4254

Android获得标题栏,状态栏,控件,屏幕高度

注意,数据的获取应该在onWindowFocusChanged函数中进行,防止数据获取错误。 首先声明整个手机屏幕的获取:activity.getWindowManager().getDefault...
  • James_shu
  • James_shu
  • 2016年11月27日 10:52
  • 1280

Android自定义状态栏颜色与应用标题栏颜色一致

看IOS上的应用,应用中状态栏的颜色总能与应用标题栏颜色保持一致,用户体验很不错,对于这种效果怎么实现的呢?下面小编给大家分享android自定义状态栏颜色与应用标题栏颜色一致的实现方法,一起看看吧 ...
  • qq_34476727
  • qq_34476727
  • 2017年01月11日 15:23
  • 949

android状态栏和标题栏的隐藏

super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);getSupportActionBar().hide...
  • zhangyitian5
  • zhangyitian5
  • 2016年11月21日 08:50
  • 1629

Android 6.0 以上实现状态栏白底黑字 「白色标题栏 App 享受 iOS 般的沉浸体验」

Android 6.0 以上实现状态栏白底黑字 「白色标题栏 App 享受 iOS 般的沉浸体验」 前言: 其实我挺不愿意起这个标题的,为什么 Android 非要做的跟 iOS 一样, 但是对于...
  • learningcoding
  • learningcoding
  • 2017年04月28日 14:44
  • 2865

Android 状态栏和应用标题栏颜色保持一致

状态栏和标题栏颜色保持一致,用在Android 4.4之后的版本使用,两种方法推荐...
  • kiven9609
  • kiven9609
  • 2017年06月13日 09:58
  • 325

仿ios状态栏颜色和标题栏颜色一样

首先创建一个工具类 import android.annotation.TargetApi; import android.app.Activity; import android.content....
  • sz754155526
  • sz754155526
  • 2017年01月06日 11:12
  • 254
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Android 中状态栏、标题栏、View的大小及区分
举报原因:
原因补充:

(最多只允许输入30个字)