android获取设备屏幕大小的方法
2016-03-10 10:26
501 查看
// 通过WindowManager获取
DisplayMetrics dm = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(dm);
System.out.println("heigth : " + dm.heightPixels);
System.out.println("width : " + dm.widthPixels);
// 通过Resources获取
DisplayMetrics dm2 = getResources().getDisplayMetrics();
System.out.println("heigth2 : " + dm2.heightPixels);
System.out.println("width2 : " + dm2.widthPixels);
// 获取屏幕的默认分辨率
Display display = getWindowManager().getDefaultDisplay();
System.out.println("width-display :" + display.getWidth());
System.out.println("heigth-display :" + display.getHeight());
可以看到,第一、第三种方法都用到了getWindowManager()这个方法,而第二种方法没有用getWindowManager()。有些网友说书写getWindowManager()后eclipse会报错,说没有getWindowManager()这个方法,这是什么原因呢?因为getWindowManager()这个方法是在类Activity中的,如果你自己编写的类不是继承于类Activity,那么必然在这个类中书写代码就不能用到getWindowManager()这个方法。所以当你自己编写的类不是继承于类Activity,那么就只能应用第二种方法获取手机屏幕的大小。
DisplayMetrics dm = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(dm);
System.out.println("heigth : " + dm.heightPixels);
System.out.println("width : " + dm.widthPixels);
// 通过Resources获取
DisplayMetrics dm2 = getResources().getDisplayMetrics();
System.out.println("heigth2 : " + dm2.heightPixels);
System.out.println("width2 : " + dm2.widthPixels);
// 获取屏幕的默认分辨率
Display display = getWindowManager().getDefaultDisplay();
System.out.println("width-display :" + display.getWidth());
System.out.println("heigth-display :" + display.getHeight());
可以看到,第一、第三种方法都用到了getWindowManager()这个方法,而第二种方法没有用getWindowManager()。有些网友说书写getWindowManager()后eclipse会报错,说没有getWindowManager()这个方法,这是什么原因呢?因为getWindowManager()这个方法是在类Activity中的,如果你自己编写的类不是继承于类Activity,那么必然在这个类中书写代码就不能用到getWindowManager()这个方法。所以当你自己编写的类不是继承于类Activity,那么就只能应用第二种方法获取手机屏幕的大小。
相关文章推荐
- 这应该是目前最系统的 Android 界面性能调优资料了
- Android 设计模式总结
- android SlidingTabLayout实现ViewPager页卡滑动效果
- Android中Broadcast Receiver的两种注册方法和区别
- android studio 模拟器安装应用失败(INSTALL_FAILED_NO_MATCHING_ABIS)
- Android中建造者模式自定义Dialog
- 实现Android 动态载入APK(Fragment or Activity实现)
- 关于Android学习实用的链接
- Android程序开发之给背景图加上移动的手势
- VisionMobile:2015年Android使用的全球趋势(三)游戏很流行,但Facebook最普遍
- Android M 概率跳不过google开机向导原因分析
- Android程序的三个构成要素
- 关于Android Studio提交代码找不到Subversion的解决办法
- Android数据库 — — —查询数据
- Android改变ExpandableListView的indicator图标实现方法
- 【转】Android开发学习笔记(一)——初识Android
- handle 与 Message
- android的SQLiteDatabase操作类
- android四大组件之ContentProvider小结
- Android基础之Process