Android杂谈---获取手机屏幕大小
来源:互联网 发布:ipad看淘宝不能横屏 编辑:程序博客网 时间:2024/04/20 06:17
SurfaceView简单例子
玩转Android---UI篇---ZoomControls放大缩小图片
更多相关推荐 这里总结下android中关于手机屏幕的相关操作:
1、获取屏幕的分辨率(因为android中处理显示的时候,需要根据屏幕分辨率的不同才去不同的布局或显示不同的素材)
Java代码
// 通过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());// 通过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());
2、去掉屏幕标题及全屏显示
Java代码
// 去掉标题 requestWindowFeature(Window.FEATURE_NO_TITLE); // 设置全屏 getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);// 去掉标题requestWindowFeature(Window.FEATURE_NO_TITLE);// 设置全屏getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
3、设置屏幕的风向
在Manifest.xml文件中配置Activity的属性
Xml代码
<activity android:name=".AnimateActivity" android:label="@string/app_name" android:screenOrientation="landscape"><!--landscape 横屏portrait 竖屏--> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity><activity android:name=".AnimateActivity" android:label="@string/app_name" android:screenOrientation="landscape"><!--landscape 横屏portrait 竖屏--> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter></activity>
在程序中控制,一般在Activity中的onCreate、onDestroy方法中控制,因为在屏幕方向发生变化时,
系统会重新启动Activity。所以需要再Activity销毁前保存相关数据,方便在下次onCreate方法中
重新加载,并更新屏幕的布局
Java代码
public void onCreate(Bundle savedInstanceState) { //强制横屏 setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE); // TODO 更新屏幕布局 } public void onDestroy() { if(getRequestedOrientation() == ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE){ // 保存数据 }else if(getRequestedOrientation() == ActivityInfo.SCREEN_ORIENTATION_PORTRAIT){ // 保存数据 } }
原文:http://www.2cto.com/kf/201108/99338.html
- Android杂谈---获取手机屏幕大小
- Android杂谈---获取手机屏幕大小
- Android杂谈---获取手机屏幕大小
- Android杂谈---获取手机屏幕大小
- Android获取手机屏幕大小
- android获取手机屏幕大小
- Android获取手机屏幕大小
- Android获取手机屏幕大小
- Android下获取手机屏幕大小
- Android获取手机屏幕像素大小
- android 获取手机屏幕的大小
- Android之获取手机屏幕大小
- Android开发获取手机屏幕大小
- Android中如何获取手机屏幕大小
- Android中如何获取手机屏幕大小
- Android中如何获取手机屏幕大小
- Android 沉淀之获取手机屏幕大小
- android学习笔记之获取手机屏幕大小
- 关于Debug和Release之本质区别的讨论本文主要包含如下内容:
- Ubuntu Linux 下安装配置Django
- PHP Fatal error: Call to undefined function pg_connect()
- 使用 HibernateTemplate 实现分页查询 (HibernateCallback接口)
- 代码坏味道,重构与模式
- Android杂谈---获取手机屏幕大小
- 畅想曲
- 程序发布批号规则
- v$session,v$session_wait,v$session_wait_history,v$active_session_history
- 接口规范
- oracle: OCA-042-题解与实验(1)
- BIOS中断—直接磁盘服务(Direct Disk Service——INT 13H)
- a question about SILK:
- 服务器同步文章规范