Activity系列讲解---Activity运行时的屏幕方向,全屏,窗体模式的设置
Android内置了方向感应器的支持。Android会根据所处的方向自动在竖屏与横屏间切换。但是有的应用程序只能在横/竖屏时运行,比如某些游戏,此时我们要锁定该Activity运行时的屏幕方向,<activity>节点的
android:screenOrientation属性可以完成该项任务
1.设置屏幕方向---设置全屏---设置窗体模式
A.设置屏幕方向:
* 1.Androidmanifest.xml设置,android:screenOrientation="landscape"
* 2.代码设置横竖屏(landscape:横屏---portrait:竖屏),一定在setContentView()前面 B.设置全屏:
* 1.代码实现--getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN);
* 2.Androidmanifest.xml设置Activity的主题,android:theme="@android:style/Theme.DeviceDefault.NoActionBar.Fullscreen" C.设置窗体模式:
* 1.代码实现--getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN);
* 2.Androidmanifest.xml设置Activity的主题,android:theme="@android:style/Theme.Dialog"

2.代码实现
(1)ScreenOrientationActivity.class
/**
* A.设置屏幕方向
* 1.Androidmanifest.xml设置,android:screenOrientation="landscape"
* 2.代码设置横竖屏(landscape:横屏---portrait:竖屏),一定在setContentView()前面
*
* B.设置全屏:
* 1.代码实现--getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN);
* 2.Androidmanifest.xml设置Activity的主题,android:theme="@android:style/Theme.DeviceDefault.NoActionBar.Fullscreen"
* C.设置窗体模式:
* 1.代码实现--getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN);
* 2.Androidmanifest.xml设置Activity的主题,android:theme="@android:style/Theme.Dialog"
*/
public class ScreenOrientationActivity extends Activity { @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState); //代码设置横竖屏(landscape:横屏---portrait:竖屏)
//setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
//setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT); //设置全屏
//getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN);
//去除标题
//requestWindowFeature(Window.FEATURE_NO_TITLE); setContentView(R.layout.activity_scree_oritation);
}
}
(2)activity_scree_oritation.xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/activity_scree_oritation"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="com.langdon.taiyang.androidtest.activity.ScreenOrientationActivity">
<TextView
android:text="屏幕方向"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
</RelativeLayout>
(3)Androidmanifest.xml
<activity
android:name=".activity.ScreenOrientationActivity"
android:theme="@android:style/Theme.Dialog">
<!-- android:theme="@android:style/Theme.DeviceDefault.NoActionBar.Fullscreen"
android:screenOrientation="landscape">-->
<intent-filter>
<action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
3.效果图如下:
![]() |
![]() |
![]() |
![]() |
Activity系列讲解---Activity运行时的屏幕方向,全屏,窗体模式的设置的更多相关文章
- 大白话Vue源码系列(05):运行时鸟瞰图
阅读目录 Vue 实例的生命周期 实例创建 响应的数据绑定 挂载到 DOM 节点 结论 研究 runtime 一边 Vue 一边源码 初看 Vue 是 Vue 源码是源码 再看 Vue 不是 Vue ...
- JVM系列之四:运行时数据区
1. JVM架构图 Java虚拟机主要分为五大模块:类装载器子系统.运行时数据区.执行引擎.本地方法接口和垃圾收集模块. 2. JDK1.7内存模型-运行时数据区域 根据<Java 虚拟机规范( ...
- Activity系列讲解---返回结果的处理
设想一下:由当前Activity跳转到其它Activity,从其它Activity再返回到当前Activity时,如何获取其它Activity存放的数据?下面用一个例子讲解, 点击selsect按钮跳 ...
- Activity系列讲解---三大基本状态与七大生命周期函数
简介:四大组件之一,在应用中一个Activity可以用来表示一个界面,可以理解为用户可视化界面,一个android应用必须通过Activity来运行和启动. 1.三大基本状态与七大生命周期函数 2.代 ...
- Activity系列讲解---数据传递
在Android中,不同的Activity实例可能运行在一个进程中,也可能运行在不同的进程中.因此需要一种特别的机制帮助我们在Activity之间传递消息.Android中通过Intent对象来表示一 ...
- Cypress系列(60)- 运行时的截图和录屏
如果想从头学起Cypress,可以看下面的系列文章哦 https://www.cnblogs.com/poloyy/category/1768839.html 背景 在测试运行时截图和录屏能够在测试错 ...
- Android开发禁止首次进入activity弹出软键盘,限制屏幕只能竖屏或者横屏展示
作者:程序员小冰,CSDN博客:http://blog.csdn.net/qq_21376985 只需在在Manifest.xml中设定activity的属性为: android:windowSoft ...
- 【C#进阶系列】24 运行时序列化
序列化是将对象或者对象图(一堆有包含关系的对象)转换成字节流的过程.而反序列化就是将字节流转为对象或对象图. 主要用于保存.传递数据,使得数据更易于加密和压缩. .NET内建了出色的序列化和反序列化支 ...
- fluent在运行时改变重力方向方法总结
Fluent版本:19.0(其他版本应该也适用) 这里我们用一个简单的算例(同心环中的自然对流)来说明 算例来自<ANSYS Fluid Dynamics Verification Manual ...
随机推荐
- Mysql操作语句
MySQL中定义数据字段的类型对你数据库的优化是非常重要的. MySQL支持多种类型,大致可以分为三类:数值.日期/时间和字符串(字符)类型. 数值类型 MySQL支持所有标准SQL数值数据类型. 这 ...
- AngularJS入门教程
1. 简介:AngularJS是为了克服HTML在构建应用上的不足而设计的.HTML是一门很好的为静态文本展示设计的声明式语言,但要构建WEB应用的话它就显得乏力了.所以我做了一些工作(你也可以觉得是 ...
- 读《单页web应用》-回顾作用域
js中没有块级作用域,只有全局作用域和函数作用域.全局变量可以在任何地方访问,局部变量只能在声明它的地方访问. var a=1; function func(){ var a=2; } console ...
- com/android/dx/command/dexer/Main : Unsupported major.minor version 52.0
这是由于JDK版本不一致造成的,指的是高版本的JDK编译的class不能放在低版本的JDK上运行. Version 52,表示JDK8编译的class不能运行在JDK7上,所以需要在本地安装JDK8.
- Linux工具入门:make工具与Makefile文件
1. make工具 利用make工具可以自动完成编译工作,这些工作包括: 如果修改了某几个源文件,则只重新编译这几个源文件 如果某个头文件被修改了,则重新编译所有包含该头文件的源文件 利用这种自动编译 ...
- DevExpress.chartControt画趋势图
private void DrawLine(DataTable dt) { Myalysis.Series.Clear(); //图标位置 Myalysis.Legend.AlignmentHoriz ...
- BZOJ 4205: 卡牌配对
4205: 卡牌配对 Time Limit: 20 Sec Memory Limit: 512 MBSubmit: 173 Solved: 76[Submit][Status][Discuss] ...
- BZOJ 4726: [POI2017]Sabota?
4726: [POI2017]Sabota? Time Limit: 20 Sec Memory Limit: 128 MBSec Special JudgeSubmit: 301 Solved ...
- spring mvc重定向方法
一.不带参数,直接重定向到另一个地址: 返回String直接跳转,如: @RequestMapping(value = "/filehandle") public String u ...
- windows常用快捷键
windows常用快捷键 Fn+F1:Windows的支持和帮助 =Windows 徽标+F1 Fn+F2:重命名对象 Fn+F3:查找所有文件 Fn+F4:选择“转到不同的文件夹”框并沿框中的项向下 ...



