`
zhouxiaoli521
  • 浏览: 567633 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Android横竖屏切换问题

阅读更多

Android横竖屏要解决的问题应该就两个:一。布局问题;二。重新载入问题。

在做APP的时候碰到一种情况:

手机切换横屏、竖屏时,想采用不同的布局文件,但又不想屏幕翻转时,Activity就不会重复的调用onCreate()、onPause()和onResume()(因为这样调用的话,太浪费资源了)。

这就需要用到 android:configChanges=”orientation|keyboardHidden|navigation” 来帮忙了。

具体做法:

1. 在AndroidManifest.xml中配置该Activity:

增加该配置的意思就是:横竖屏幕切换的时候,不重新绘制Activity(不重新调用onCreate,onResume等方法),而是仅仅执行onConfigurationChanged()方法。

<?xml version=”1.0″ encoding=”utf-8″?>
<manifest xmlns:android=”http://schemas.android.com/apk/res/android”
package=”com.liucd”
android:versionCode=”1″
android:versionName=”1.0″>
<application android:icon=”@drawable/icon” android:label=”@string/app_name”>
<activity android:name=”.Orientation2″ android:label=”@string/app_name”
android:configChanges=”orientation|keyboardHidden|navigation”
>
<intent-filter>
<action android:name=”android.intent.action.MAIN” />
<category android:name=”android.intent.category.LAUNCHER” />
</intent-filter>
</activity>
</application>
</manifest>

2.重写onConfigurationChanged方法,并在横竖切换的时候加上自己的处理逻辑。

/**

* android:configChanges=”orientation|keyboardHidden|navigation

* 当屏幕翻转时,Activity就不会重复的调用onCreate()、onPause()和onResume().

* 而是调用onConfigurationChanged(Configuration newConfig);

*/

@Override

public void onConfigurationChanged(Configuration config) {

super.onConfigurationChanged(config);

if (this.getResources().getConfiguration().orientation == Configuration.ORIENTATION_LANDSCAPE) {

makeText(“横屏”);

} else if (this.getResources().getConfiguration().orientation == Configuration.ORIENTATION_PORTRAIT) {

makeText(“竖屏”);

}

setContentView(R.layout.main);

}

3.成功。Eclipse工程下载

http://www.liucundong.com/?p=292

分享到:
评论

相关推荐

    Android 横竖屏切换

    在Android开发中,横竖屏切换是一个十分常见但又复杂的功能。Android设备上的屏幕方向变化通常由物理重力感应触发,但也可以通过软件设置来控制。在没有关闭横竖屏切换功能的情况下,当系统触发屏幕方向改变时,当前...

    Fragment的使用,隐藏显示以及androidPad横竖屏切换

    本示例“Fragment的使用,隐藏显示以及androidPad横竖屏切换”将重点讲解如何操作Fragment以及处理平板设备上的横竖屏切换。 首先,让我们深入理解Fragment的生命周期。Fragment有自己的onCreate(), onCreateView()...

    android横竖屏切换

    通过以上讲解,我们可以理解Android横竖屏切换的基本原理和实践技巧。这个Demo提供了一个实际的示例,帮助开发者更好地理解和掌握这一功能的实现。在实际项目中,根据具体需求灵活运用这些知识,可以提升应用的用户...

    Android横竖屏切换处理Demo源码.rar

    这份"Android横竖屏切换处理Demo源码"提供了一个很好的学习示例,帮助开发者理解和处理这一问题。以下是对这个Demo源码中涉及的知识点的详细解析: 1. **Activity生命周期与横竖屏切换**: 当设备屏幕方向发生变化...

    Android应用源码之(横竖屏切换处理-IT计算机-毕业设计.zip

    这份"Android应用源码之(横竖屏切换处理)"的资源,是一个非常适合毕业设计学习的示例,可以帮助开发者深入理解如何在Android应用中处理屏幕旋转的问题。 首先,Android系统默认支持横竖屏的自动切换,但有时为了...

    android 横竖屏切换生命周期

    android activity 执行屏幕横竖屏切换的时候activity声明周期执行的竖屏的时候点击横屏 09-04 15:54:27.675: I/yxd(6708): 应用程序执行了============onPause===方法===&gt;&gt; 09-04 15:54:27.685: I/yxd(6708): 应用...

    Android视频播放器(支持横竖屏切换)

    在Android平台上开发一款支持横竖屏切换的视频播放器是一项常见的任务,这涉及到对Android多媒体框架的深入理解和屏幕适配策略。"Android视频播放器(支持横竖屏切换)"这个项目的核心目标是创建一个能够根据设备...

    android 二维码扫描 支持横竖屏切换Demo

    本Demo主要展示了如何利用zxing库实现一个支持横竖屏切换的二维码扫描功能。ZXing,全称Zebra Crossing,是一个开源的条码处理库,支持多种格式的条码和二维码扫描。 首先,我们需要在项目中集成zxing库。这里使用...

    【Android每周专题】横竖屏切换

    在Android开发中,横竖屏切换是一个常见的需求,尤其对于那些需要根据屏幕方向提供不同界面布局的应用来说。本文将深入探讨Android系统中的横竖屏切换机制,并通过"OrientationSwitchDemo"这个示例代码来帮助理解。 ...

    安卓Android源码——(横竖屏切换处理).rar

    在安卓(Android)系统中,横竖屏切换是应用程序开发中的常见需求,涉及到用户界面(UI)布局的动态调整和程序状态的保存与恢复。本资料"安卓Android源码——(横竖屏切换处理).rar"很可能是针对这一主题的一个实践...

    android安卓横竖屏切换效果、webview加载以及生命周期监测

    在Android开发中,横竖屏切换是常见的应用场景,它涉及到Activity的生命周期管理和用户界面的适配。本项目“LandscapePortraitDemo”旨在演示如何在Android Studio中处理这一问题,同时结合WebView的加载以及...

    android 视频播放 点击横竖屏切换 自动旋转横竖屏切换 冲突

    android 视频播放 点击横竖屏切换 自动旋转横竖屏切换 冲突 仿优酷(ios)效果 android没去看看到ios有这个效果 项目需要也实现了

    Android横竖屏切换

    以下是关于Android横竖屏切换的关键知识点: 1. **布局切换**: - 在Android项目中,为了处理横竖屏切换,开发者通常会在`res`目录下创建`layout-land`和`layout-port`两个子目录。`layout-land`用于放置横屏布局...

    fragment横竖屏切换demo

    Fragment的概念在Android 3.0(API级别11)引入,为开发者提供了更大的灵活性来设计多屏幕应用,特别是在处理横竖屏切换时。本项目"fragment横竖屏切换demo"是一个实际操作的例子,展示了如何利用Fragment来实现横竖...

    android横竖屏切换总结

    在Android应用开发中,横竖屏切换是一个常见的需求,开发者需要处理好布局的变化以及由此引发的用户体验问题。本文将详细讲解如何在Android中实现横竖屏切换,并讨论如何禁止或控制这种切换。 首先,Android系统...

    Android横竖屏切换及其对应布局加载问题详解

    总结起来,处理Android横竖屏切换的关键在于理解屏幕方向变化对`Activity`生命周期的影响,以及如何通过布局文件分隔和`onConfigurationChanged()`方法来适配不同屏幕方向。正确地管理这些方面可以使应用在横竖屏间...

    android动态创建fragment,横竖屏切换.

    本篇将深入探讨如何在Android中动态创建Fragment以及在横竖屏切换时保持状态。 首先,让我们了解Fragment的基本概念。Fragment是一个可以包含用户界面的模块化组件,它可以被添加到Activity中,也可以从Activity中...

    android 横竖屏切换的处理

    总的来说,处理Android横竖屏切换涉及多方面的知识,包括布局适配、配置变更监听、数据保存恢复、Activity生命周期以及性能优化等。理解并熟练运用这些知识点,能帮助开发者创建出适应不同屏幕方向的高质量应用。

Global site tag (gtag.js) - Google Analytics