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运行时的屏幕方向,全屏,窗体模式的设置的更多相关文章

  1. 大白话Vue源码系列(05):运行时鸟瞰图

    阅读目录 Vue 实例的生命周期 实例创建 响应的数据绑定 挂载到 DOM 节点 结论 研究 runtime 一边 Vue 一边源码 初看 Vue 是 Vue 源码是源码 再看 Vue 不是 Vue ...

  2. JVM系列之四:运行时数据区

    1. JVM架构图 Java虚拟机主要分为五大模块:类装载器子系统.运行时数据区.执行引擎.本地方法接口和垃圾收集模块. 2. JDK1.7内存模型-运行时数据区域 根据<Java 虚拟机规范( ...

  3. Activity系列讲解---返回结果的处理

    设想一下:由当前Activity跳转到其它Activity,从其它Activity再返回到当前Activity时,如何获取其它Activity存放的数据?下面用一个例子讲解, 点击selsect按钮跳 ...

  4. Activity系列讲解---三大基本状态与七大生命周期函数

    简介:四大组件之一,在应用中一个Activity可以用来表示一个界面,可以理解为用户可视化界面,一个android应用必须通过Activity来运行和启动. 1.三大基本状态与七大生命周期函数 2.代 ...

  5. Activity系列讲解---数据传递

    在Android中,不同的Activity实例可能运行在一个进程中,也可能运行在不同的进程中.因此需要一种特别的机制帮助我们在Activity之间传递消息.Android中通过Intent对象来表示一 ...

  6. Cypress系列(60)- 运行时的截图和录屏

    如果想从头学起Cypress,可以看下面的系列文章哦 https://www.cnblogs.com/poloyy/category/1768839.html 背景 在测试运行时截图和录屏能够在测试错 ...

  7. Android开发禁止首次进入activity弹出软键盘,限制屏幕只能竖屏或者横屏展示

    作者:程序员小冰,CSDN博客:http://blog.csdn.net/qq_21376985 只需在在Manifest.xml中设定activity的属性为: android:windowSoft ...

  8. 【C#进阶系列】24 运行时序列化

    序列化是将对象或者对象图(一堆有包含关系的对象)转换成字节流的过程.而反序列化就是将字节流转为对象或对象图. 主要用于保存.传递数据,使得数据更易于加密和压缩. .NET内建了出色的序列化和反序列化支 ...

  9. fluent在运行时改变重力方向方法总结

    Fluent版本:19.0(其他版本应该也适用) 这里我们用一个简单的算例(同心环中的自然对流)来说明 算例来自<ANSYS Fluid Dynamics Verification Manual ...

随机推荐

  1. [LeetCode] Scramble String 爬行字符串

    Given a string s1, we may represent it as a binary tree by partitioning it to two non-empty substrin ...

  2. __new__静态方法

    __new__静态方法 新式类都有一个__new__的静态方法,它的原型是object.__new__(cls[, ...]) cls是一个类对象,当你调用C(*args, **kargs)来创建一个 ...

  3. Debian/Ubuntu安装SSH-Server(SFTP)

    在Debian/Ubuntu命令行执行: sudo apt-get update sudo apt-get install ssh sudo apt-get install openssh-serve ...

  4. FFT 快速傅里叶变换浅析

    终于补完坑了哈哈哈 这个东西很神奇,看了半天网上的解释和课件,研究了很长时间,算是大概明白了它的原理. 话不多说先上图. 我们要求的h(x)=f(x)*g(x),f(x)=Σai*x^i,g(x)=Σ ...

  5. ReactNative 使用微软的CodePush进行热更新,继续填坑

    1.别被开发环境骗了 在我们开发react native的时候,一键运行工程,js改了,只要cmd+R就可以刷新了.然后会轻易以为真正app上线的时候也是一样,只要app一打开就是最新的. 其实!这是 ...

  6. Jquery datatables 使用方法

    说明: 1.s开头的是字符串 2.b开头的是布尔值 3.i开头的是整型值 4.o开头的是Json对象 5.ao开头的是Json对象数组 6.aa开头的是二维数组 7.fn开头的是函数 服务器端返回的数 ...

  7. PowerShell自动部署IIS站点(Windows Server 2008 R2)

    1.功能描述 1. 连接软件源服务器下载.NET Framework 4.0..NET Framework 4.5. 2. 检测并判断当前.NET Framework版本是否小于v4.0,如果小于则进 ...

  8. Linux 文件压缩与归档

    .note-content { font-family: "Helvetica Neue", Arial, "Hiragino Sans GB", STHeit ...

  9. Oracle数据库to_date()和to_char()的相关

    select * from T_A a where a.begintime=to_date('2013-1-1','yyyy-mm-dd');和select * from T_A a where to ...

  10. iOS 动态化

    来自bang's blog http://blog.cnbang.net/tech/3286/ 问题 在开发模式上,web 的方式是比较先进的,有各种优点,包括跨平台/UI开发效率高,最重要的是可以时 ...