android获取自定义控件位置坐标,屏幕尺寸,标题栏,状态栏高度

1.获取自定义控件height

在本Activity中获取当前Activity中控件的height:

Button button = (Button)findViewById(R.id.button);int buttonHeight = button.getHeight();

在Activity中获取其他xml文件中控件的height:

LayoutInflater factorys = LayoutInflater.from(当前类.this);final View textEntryView = factorys.inflate(R.layout.你要获取的另一个XML, null);TextView y_type = (TextView) textEntryView.findViewById(R.id.控件ID);int textHeight = y_type.getHeight();
或者
LayoutInflater inflater = (LayoutInflater) context.getSystemService(LAYOUT_INFLATER_SERVICE);   final View layout = inflater.inflate(R.layout.my_kebiao_setting,null); TextView y_type = (TextView)findViewById(R.id.控件ID);int textHeight = y_type.getHeight();

2.获取屏幕尺寸:

   

 DisplayMetrics metrics = new DisplayMetrics(); getWindowManager().getDefaultDisplay().getMetrics(metrics); int screenWidth=metrics.widthPixels;            //屏幕宽度 int .screenHeight=metrics.heightPixels;        //屏幕高度

这段代码可以插入到Activity的onCreate()函数中。


 3.获取标题栏、状态栏高度:

    

Rect rect = new Rect();     Window win = this.getWindow();     win.getDecorView().getWindowVisibleDisplayFrame(rect);     int statusBarHeight = rect.top;     int contentViewTop = win.findViewById(Window.ID_ANDROID_CONTENT).getTop();     int titleBarHeight = contentViewTop - Variable.statusBarHeight;    //statusBarHeight为状态栏高度,titleBarHeight为标题栏高度

getLocationOnScreen 计算该视图在全局坐标系中的x,y值,(注意这个值是要从屏幕顶端算起,也就是包括了通知栏的高度)//获取在当前屏幕内的绝对坐标 
getLocationInWindow 计算该视图在它所在的widnow的坐标x,y值,//获取在整个窗口内的绝对坐标

getLeft , getTop, getBottom, getRight, 这一组是获取相对在它父亲里的坐标


int[] location = new  int[2] ;view.getLocationInWindow(location); //获取在当前窗口内的绝对坐标view.getLocationOnScreen(location);//获取在整个屏幕内的绝对坐标location [0]--->x坐标,location [1]--->y坐标




更多相关文章

  1. Android(安卓)ProgressBar圆形进度条颜色设置
  2. android 自定义控件继承TextView
  3. Android图片显示ICON――基础编
  4. Android(安卓)FrameWork——PackageManager框架
  5. android 自定义LabelView实现各类小标签,重要功能已标注
  6. Android原生调用mui里面的js如何实现
  7. wakelock的使用
  8. Android之xml解析和json解析
  9. Android可平移缩放旋转的ImageView的实现

随机推荐

  1. android之interpolator的用法详解
  2. Android(安卓)ListView
  3. android 去掉listview之间的黑线
  4. Android(安卓)动画的重复播放
  5. 让android应用程序获得system权限
  6. Android(安卓)相关属性
  7. eclipse for android安装过程
  8. Android整机源码如何轻松下载?清华大学And
  9. Android(安卓)代码自动提示功能
  10. 访问 Android(安卓)开发者网站 & Go 官网