布局 - 土地不采摘景观布局xml

Bha*_*rat 4 android android-layout

我想为风景和肖像设计不同的布局.但两个方向最终都使用相同的布局xml.我已经在StackOverflow上找到了十几个问题,但没有一个能解决我的问题.

在布局下我有一个activity_main.xml文件.我有不同横向布局的文件夹,如答案所述:

layout/  
   activity_main.xml 
   layout-land-hdpi/
      activity_main.xml
   layout-land-ldpi/ 
      activity_main.xml
   layout-land-mdpi/ 
      activity_main.xml
   layout-small-land-ldpi/
      activity_main.xml
Run Code Online (Sandbox Code Playgroud)

它们具有相同的activity_main.xml文件,但背景颜色不同.

我没有android:configChanges在Android的AndroidManifest.xml中设置Activity.我没有压倒性的,onConfigurationChanged()因为我没有手动处理方向更改.

我在项目中使用actionbarsherlock库.我使用ActionBar Sytele Generator制作了动作栏主题.

AndroidManifest.xml中的minSdk和TargetSdk:

<uses-sdk
    android:minSdkVersion="10"
    android:targetSdkVersion="17" />
Run Code Online (Sandbox Code Playgroud)

我在运行Android 4.3(Galaxy Nexus),Android 4.2.2(Nexus 7)和Android 2.3.3(Nexus S)的Emulators上运行代码.结果完全相同.

我有什么不对的吗?

谢谢!

Vik*_*ram 5

你这是错误的方式.文件夹layoutlayout-land应该在同一级别.

你需要res/layoutres/layout-land.

res
  |_ layout
  |_ layout-land
  |_ layout-...
  |_ layout-...
Run Code Online (Sandbox Code Playgroud)

因此,您的设置应如下所示:

res
  |_ layout
          |_ activity_main.xml
  |_ layout-land-hdpi
          |_ activity_main.xml
  |_ layout-land-ldpi
          |_ activity_main.xml
  |_ layout-land-mdpi
          |_ activity_main.xml
  |_ layout-small-land-ldpi
          |_ activity_main.xml
Run Code Online (Sandbox Code Playgroud)