您的位置:首页 > 移动开发 > Android开发

android横竖屏和隐藏标题栏、状态栏总结

2015-06-24 11:56 351 查看
http://www.drovik.com/ 2012-9-19 21:31:17 来源:新浪博客 点击:1727

任务中国 taskcn.com 1、android横竖屏

Android手机有两种手持方式,通俗的说,就是横着拿和竖着拿。那么在Android系统中,如何识别是哪种手持方式来决定屏幕的布局呢?

在程序的res目录下有一个layout目录,也就是res/layout/,有关于布局的东西在这里面描述。如果是竖着拿,那么会自动寻找res /layout-port(port意即portrait)目录作为缺省布局,如果是横着拿,那么会用res/layout-land(land意即 landscape)目录作为缺省布局。这样,就可以为两种屏幕尺寸定义不同的布局方式了。

如果在res目录下,既有layout,也有layout-port、layout-land,那么在横着用的时候,会用哪个捏,是layout-land。如果layou-land没有,才会使用layout。

针对不同的屏幕尺寸,除了在布局上会有不同之外,在操作上也可能会用不同,那么在操作时如何识别两种尺寸捏?可以通过这个方法来判断屏幕的方向:Context.getResources().getConfiguration().orientation

可能的值有:

Configuration.ORIENTATION_PORTRAIT 也就是竖着

Configuration.ORIENTATION_LANDSCAPE 也就是横着

Configuration.ORIENTATION_SQUARE 方的?不清楚

Configuration.ORIENTATION_UNDEFINED

如果我们想要明确的使用横屏或者竖屏显示:

可以通过java代码实现:

//设置为横屏

setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);

// 设置为竖屏

setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);

也可以通过xml实现:

//在配置文件中,设为横

android:screenOrientation=”landscape”

//在配置文件中,设为竖屏

android:screenOrientation=”portrait”

或者通过在res下建立固定的目录来让系统自己挑选横屏或者竖屏显示

在res目录下建立layout-land和layout-port目录,相应的layout文件不变,比如main.xml。layout-land是横屏的layout,layout-port是竖屏的layout,其他的不用管模拟器自动寻找

2、android隐藏标题栏、状态栏

一、隐藏标题栏

//隐藏标题栏

this.requestWindowFeature(Window.FEATURE_NO_TITLE);

二、隐藏状态栏

//隐藏状态栏

this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);

三、去掉所有Activity界面的标题栏

  修改AndroidManifest.xml

  在application 标签中添加android:theme=”@android:style/Theme.NoTitleBar”

四、去掉所有Activity界面的TitleBar 和StatusBar

  修改AndroidManifest.xml

  在application 标签中添加

  android:theme=”@android:style/Theme.NoTitleBar.Fullscreen”
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: