Android windowBackground随设备转动

标签 android background

我有一个带背景的 Android 应用程序,但我想始终保持纵向。所以 Activity 可以旋转,只是墙纸不能。这可能吗?

最佳答案

您可以通过代码或使用如何根据屏幕旋转选择横向和纵向布局 xml 文件的 native 行为来执行此操作。

默认情况下,在 res/文件夹中有 layout/文件夹。例如,在这里,您可能将 main.xml 的元素背景设置为@drawable/background_portrait。

然后您可以做的是在 res/文件夹中创建一个名为 layout-land/的新文件夹,在这里您还将拥有 main.xml

在后一种情况下,您应该更新 main.xml(在 layout-land/中)文件夹以将背景指定为 @drawable/background_landscape。

然后您可以根据需要自定义每个背景图像。设备将根据当前方向显示 main.xml 文件。

通过代码 在代码中,在 Activity 的 onCreate() 方法中或者通过绑定(bind)到方向更改事件,您可以确定当前方向并更新布局的背景属性。

protected void updateBackground()
{
    if(getRequestedOrientation() == ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE)
    {                   
        //pseudo code
        setBackround(R.drawabl.background_landscape);
    }else{
        setBackround(R.drawabl.background_portrait);
    }
}

关于Android windowBackground随设备转动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4143863/

相关文章:

Firefox 6 背景图片重复问题

android - 从安卓到谷歌应用引擎

android - 无法从 Assets 'index.android.bundle' 加载脚本

java - 无法初始化类 com.sun.jna.Native Android Studio IDE fatal error

unix - 后台进程返回值

iPhone 应用程序 : not resuming audio session in AVAudio Player

jquery - 将背景视频切换为背景颜色

Android:微调器文本向右对齐但不居中

android - 在 Android 上使用 "mobile phone numbers"查询联系人的最快方法

android - 如何将当前壁纸设置为我的应用程序背景图像 Android?