布局不会更改为layout-land版本

时间:2014-01-20 16:35:00

标签: android layout orientation landscape

我刚刚学会了在名为“layout-land”的不同文件夹中使用重复布局来更改布局。

我只是简单地复制了原始布局中的整个代码,并且小心不要拼写错误。在我的清单中没有任何迹象表明我想自己处理方向代码。

但是,当我运行应用程序并从默认纵向更改为横向模式时,布局拒绝更改为'layout-land'文件夹中具有相同名称的布局,该文件夹具有不同的颜色背景当然。顺便说一句,我正在使用一个模拟器,用于平台4.4。还请注意我是初学者。

如果有人可以提出可能出现的问题,我会很感激!

清单文件

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.MB2Assignment.assignment"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk
        android:minSdkVersion="8"
        android:targetSdkVersion="18" />

    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >

        <activity
            android:name="com.MB2Assignment.assignment.Menu"
            android:label="@string/app_name" 
            >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

        <activity
            android:name="com.MB2Assignment.assignment.MainActivity"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>

        <activity
            android:name="com.MB2Assignment.assignment.Counter"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.COUNTER" />

                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>

         <activity
            android:name="com.MB2Assignment.assignment.Settings"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.SETTINGS" />

                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>

        <activity
            android:name="com.MB2Assignment.assignment.prefs"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.PREFS" />

                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>

         <activity
            android:name="com.MB2Assignment.assignment.about"
            android:label="@string/app_name" 
            android:theme="@android:style/Theme.Dialog">           
            <intent-filter>
                <action android:name="android.intent.action.ABOUT" />

                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>

         <activity
            android:name="com.MB2Assignment.assignment.Graphics"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.GRAPHICS" />

                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>

         <activity
            android:name="com.MB2Assignment.assignment.GFXSurface"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.GRAPHICSSURFACE" />

                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>

         <activity
            android:name="com.MB2Assignment.assignment.Sound"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.SOUND" />

                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>


    </application>



</manifest>

layout-xml file

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:configChanges="orientation|keyboardHidden"
    android:layout_width="match_parent"
    android:background="@drawable/blue"
    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"
    android:gravity="center_horizontal"
    >

    <TextView
        android:id="@+id/textView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_alignRight="@+id/button_MenuToCounter"
        android:layout_marginTop="25dp"
        android:text="MENU"
        android:textSize="30dp" />

    <Button
        android:id="@+id/button_MenuToCounter"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/textView1"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="22dp"
        android:text="Counter" />

    <Button
        android:id="@+id/button_MenuToGraphics"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/button_MenuToCounter"
        android:layout_centerHorizontal="true"
        android:text="The Falling Man" />

    <Button
        android:id="@+id/button_MenuToGraphics2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/button_MenuToGraphics"
        android:layout_centerHorizontal="true"
        android:text="The Following Man" />

    <ImageButton
        android:id="@+id/imagebutton_settings"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/button_MenuToGraphics2"
        android:layout_centerHorizontal="true"
        android:src="@drawable/settings" />

</RelativeLayout>

3 个答案:

答案 0 :(得分:1)

确保您的清单中没有类似的内容,更具体地说是您要展示/控制的活动

android:screenOrientation="portrait"

如果有,请将其删除。

还要确保您的xml文件具有相同的名称

enter image description here

希望它有所帮助。

答案 1 :(得分:1)

它实际上是Android 4.4模拟器中的一个错误。您可以跟踪已经提交的有关方向更改错误的问题... https://code.google.com/p/android/issues/detail?id=61671

答案 2 :(得分:0)

android:configChanges="orientation|keyboardHidden"

不应该在RelativeLayout属性中