我的Tablet应用程序有两个xml文件(Android布局),如果布局是单窗格布局,我想将自定义MapFragment与另一个Fragment交换。
这是我用来开始我的视图的布局,其中包含一个位置列表(初始片段是一个ListFragment,工作正常),所以在middle_frame.xml中:
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/header_frame"
android:layout_width="match_parent"
android:layout_height="match_parent" >
</FrameLayout>
接下来是我的map_layout.xml:
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/map_fragment_framelayout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<fragment class="com.google.android.gms.maps.MapFragment"
android:id="@+id/map_fragment_id"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</FrameLayout>
当我点击ListFragment中的列表项时,我想更新地图以便它移动到新的位置,所以我替换“header_frame”但它给了我一个空指针异常。这是因为MapFragment类不在单窗格布局中。我怎么能把它们换掉?我试着打电话 setContentView(R.layout.map_layout.xml)但是这会抛出相同的错误。如何正确设置布局?