根据屏幕方向自动调整片段

时间:2014-04-23 13:51:08

标签: android android-layout android-fragments

我是Android新手。我想根据屏幕方向更改屏幕上片段的排列方式。我创建了一个名为“layout-land”的文件夹,并创建了一个具有不同方向值的替代布局文件。

但是,当我更改模拟器的方向时,没有任何变化。我做错了什么?

我的layout-land xml如下所示:

<LinearLayout xmlns:tools="http://schemas.android.com/tools"
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:baselineAligned="false"
    android:orientation="horizontal" >

    <fragment
        android:id="@+id/fragmentTitles"
        android:name="com.src.androidbooks.BookListFragment"
        android:layout_width="0dp"
        android:layout_height="match_parent"
        android:layout_weight="1"
        tools:layout="@layout/fragment_book_list" />

    <fragment
        android:id="@+id/fragmentDescription"
        android:name="com.src.androidbooks.BookDescFragment"
        android:layout_width="0dp"
        android:layout_height="match_parent"
        android:layout_weight="1"
        tools:layout="@layout/fragment_book_desc" />

</LinearLayout>

我的布局xml如下所示:

<LinearLayout
    xmlns:tools="http://schemas.android.com/tools"
    android:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    xmlns:android="http://schemas.android.com/apk/res/android">

  <fragment
      android:layout_width="match_parent"
      android:layout_height="0dp"
      android:layout_weight="1"
      android:name="com.src.androidbooks.BookListFragment"
      android:id="@+id/fragmentTitles"
      tools:layout="@layout/fragment_book_list"/>

  <fragment
      android:layout_width="match_parent"
      android:layout_height="0dp"
      android:layout_weight="1"
      android:name="com.src.androidbooks.BookDescFragment"
      android:id="@+id/fragmentDescription"
      tools:layout="@layout/fragment_book_desc"/>
</LinearLayout>

我的清单文件的一部分如下所示:

<activity
    android:name="com.src.androidbooks.MainActivity"
    android:configChanges="orientation|screenSize"
    android:label="@string/app_name" >

我的MainActivity文件的一部分如下所示:

@Override
public void onConfigurationChanged(Configuration newConfig) {
    // TODO Auto-generated method stub
    super.onConfigurationChanged(newConfig);
    Log.d("Debug", "CHANGED!");
}

我在MainActivity文件中导入了android.content.res.Configuration

0 个答案:

没有答案