我的Android应用程序中包含两个FrameLayouts的Activity。我想通过使用googlemaps v2在顶部框架中包含地图。在底部framelayout我想实现一个列表。每次当我用地图添加片段时,地图使用完整的屏幕,如果我在第二个framelayout中包含一个列表,我会得到一个nullpointer错误。
这是我将片段包含在地图中的代码:
setContentView(R.layout.activity_new_tour);
FragmentTransaction ft = getSupportFragmentManager().beginTransaction();
GoogleMapsFragment googleMapFragment = new GoogleMapsFragment();
ft.replace(R.id.fragment111_container,
googleMapFragment,"mapfragment");
ft.addToBackStack(null);
ft.commit();:
这是活动的布局
<FrameLayout
android:id="@+id/fragment111_container"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="40"
/>
<FrameLayout
android:id="@+id/fragment222_container"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="60" />
<!-- Listview to display slider menu -->
<ListView
android:id="@+id/list_slidermenu"
android:layout_width="270dp"
android:layout_height="match_parent"
android:layout_gravity="start"
android:choiceMode="singleChoice"
android:divider="@color/white"
android:dividerHeight="1dp"
android:listSelector="@color/blue"
android:background="@color/black"/>
</android.support.v4.widget.DrawerLayout>
有人可以告诉我这是否可行,我该怎么做?也许有人可以展示我的榜样。
答案 0 :(得分:0)
在XML文件中,如果要将mapFragment放在frameLayout和ListView之上,则应将它们全部放在FrameLayout中。另外,您可能希望在FrameLayout中放置RelativeLayout或LinearLayout,以便可以在ListView上方创建mapFragment。
示例XML:
<FrameLayout>
<RelativeLayout>
<Fragment android:id="+id/mapFragment"
....../>
<ListView android:id="list"
android:layout_below="+id/mapFragment"
...... />
</RelativeLayout>
</FrameLayout>