Android Activity横屏、竖屏、全屏
来源:互联网 发布:阿里和淘宝的区别 编辑:程序博客网 时间:2024/05/21 16:21
Android手机屏幕方向改变的时可以使应用程序随之相应改变,这里就简单介绍屏幕操作中的一点小技巧。包括始终横(竖)屏、全屏、屏幕方向改变时销毁Activity的问题。
1、屏幕始终横屏或竖屏
对于一些游戏,可能我们希望屏幕始终横屏,这时只需要在AndroidManifest.xml中对Activity属性进行设置
android:screenOrientation="landscape"表示始终横屏,
android:screenOrientation="portrait"表示始终竖屏,下面是始终横屏的例子
- <activity android:name="ViewStatusDetailActivity"
- android:screenOrientation="landscape"
- android:label="@string/app_name">
- </activity>
android:screenOrientation的其他值见screenOrientation
2、Activity全屏
两种配置方式,
一种是在AndroidManifest.xml中对Activity属性进行设置,如下:
- <activity android:name="ViewStatusDetailActivity"
- android:theme="@android:style/Theme.NoTitleBar.Fullscreen"
- android:label="@string/app_name">
- </activity>
android:theme="@android:style/Theme.NoTitleBar.Fullscreen"表示全屏该Activity
第二种是在代码中进行设置
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- //无title
- requestWindowFeature(Window.FEATURE_NO_TITLE);
- //全屏
- getWindow().setFlags(WindowManager.LayoutParams. FLAG_FULLSCREEN ,
- WindowManager.LayoutParams. FLAG_FULLSCREEN);
- setContentView(R.layout.main);
- }
- }
其中requestWindowFeature和getWindow().setFlags必须一起使用,并且在setContentView前面
3、解决屏幕方向改变Activity销毁重建问题
当屏幕方向改变时,经常发现刚输入的文字被清空了、imageView图片不存在了,或是网络数据重新获取,其实是Activity会被销毁,重新调用OnCreate构建,如何防止这种情况呢,分为两步:
3.1 在AndroidManifest.xml中对Activity属性进行设置,如下:
- <activity android:name="ViewStatusActivity"
- android:configChanges="orientation|keyboardHidden"
- android:label="@string/app_name"
- android:theme ="@style/update_status_style">
- </activity>
android:configChanges="orientation|keyboardHidden"表示改变界面方向和隐藏键盘
具体android:configChanges见configChanges
3.2 重载onConfigurationChanged方法,此方法会在屏幕方向改变时被调用如下:
- @Override
- public void onConfigurationChanged(Configuration newConfig) {
- super.onConfigurationChanged(newConfig);
- if (this.getResources().getConfiguration().orientation == Configuration.ORIENTATION_LANDSCAPE) {
- // 加入横屏要处理的代码
- } else if (this.getResources().getConfiguration().orientation == Configuration.ORIENTATION_PORTRAIT) {
- // 加入竖屏要处理的代码
- }
- Android Activity横屏、竖屏、全屏
- Android Activity横屏、竖屏、全屏
- Android Activity 全屏 横/竖屏
- Android Activity设置全屏
- 【Android】Activity全屏设置
- Android Activity 全屏
- Android Activity 全屏
- Android Activity设置全屏
- Android Activity全屏
- Android 之 Activity全屏
- Android Activity 设置全屏
- Android activity设置全屏
- 【Android】Activity全屏展示
- android activity 全屏非全屏切换
- Android如何使Activity全屏
- android设置activity全屏 | 无标题
- android 设置activity不全屏
- android activity非全屏、透明
- Python代码规范(PEP8)问题及解决
- 【转】通过UserAgent判断智能手机(设备,Android,IOS)
- cmd 进入d盘,XP与Win7、8区别
- Spring Data Redis(Repositories-CDI integration)
- 解决R语言xlsx安装遇到问题
- Android Activity横屏、竖屏、全屏
- MySQL索引背后的数据结构及算法原理
- 神经网络压缩(8)Incremental Network Quantization: Towards Lossless CNNs with Low-precision Weights
- Adobe Flash Player安装遇到问题
- centos 7.2 netcat 安装以及使用
- mysql -创建 用户 和 数据库
- vuex
- 第二章:2.9 总结一下 Django
- Jetty Groovy AppServer