AppBarLayout和谷歌地图片段

时间:2015-12-29 22:28:58

标签: android google-maps android-fragments android-toolbar

我在使用AppBarLayout时遇到添加Google地图片段的问题。请帮忙,这是带注释片段的代码

<?xml version="1.0" encoding="utf-8"?>

<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/drawer_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true">

<android.support.design.widget.CoordinatorLayout
  android:id="@+id/main_content"
  android:layout_width="match_parent"
  android:layout_height="match_parent">
<android.support.design.widget.AppBarLayout
    android:id="@+id/appbar"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar">
  <android.support.v7.widget.Toolbar
      android:id="@+id/toolbar"
      android:layout_width="match_parent"
      android:layout_height="?attr/actionBarSize"
      android:background="?attr/colorPrimary"
      app:popupTheme="@style/ThemeOverlay.AppCompat.Light"
      app:layout_scrollFlags="scroll|enterAlways" />
</android.support.design.widget.AppBarLayout>

<!--<fragment
            android:id="@+id/map"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:enabled="true"
            android:clickable="true"
            app:cameraZoom="16"
            class="com.google.android.gms.maps.SupportMapFragment" />-->

 <android.support.design.widget.FloatingActionButton
        android:id="@+id/location_fab"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="start|bottom"
        android:layout_margin="@dimen/fab_margin"
        android:src="@drawable/ic_location" />

<android.support.design.widget.FloatingActionButton
    android:id="@+id/time_fab"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="center|bottom"
    android:layout_margin="@dimen/fab_margin"
    android:src="@drawable/ic_clock" />

<android.support.design.widget.FloatingActionButton
    android:id="@+id/distance_fab"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="end|bottom"
    android:layout_margin="@dimen/fab_margin" />

 </android.support.design.widget.CoordinatorLayout>

 <android.support.design.widget.NavigationView
  android:id="@+id/nav_view"
  android:layout_height="match_parent"
  android:layout_width="wrap_content"
  android:layout_gravity="start"
  android:fitsSystemWindows="true"
  app:headerLayout="@layout/nav_header"
  app:menu="@menu/drawer_view" />
 </android.support.v4.widget.DrawerLayout>

我试图将片段上下移动并放入我知道的每个布局中,但注意到了。如果你帮忙,将非常感谢!

2 个答案:

答案 0 :(得分:0)

我相信你想要做的是:

从drawerlayout中删除片段元素,并将其移动到当用户选择抽屉中的给定项目时将加载的实际片段或活动。

因此,如果您将地图片段放在其自己的布局文件中并在其自己的片段中膨胀该布局,然后在用户从抽屉中选择MAP时最终适当地设置片段!

我希望这会有所帮助。祝你好运!

答案 1 :(得分:0)

对不起,不好意思。我找到了解决方案:D 这是

<?xml version="1.0" encoding="utf-8"?>
<android.support.v4.widget.DrawerLayout    xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/drawer_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true">
<LinearLayout
                  android:layout_width="match_parent"
                  android:layout_height="wrap_content"
                  android:orientation="vertical">
<fragment
            android:id="@+id/map"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:enabled="true"
            android:clickable="true"
            app:cameraZoom="16"
            class="com.google.android.gms.maps.SupportMapFragment" /> 
</LinearLayout>
<android.support.design.widget.CoordinatorLayout
   android:id="@+id/main_content"
  android:layout_width="match_parent"
  android:layout_height="match_parent">
<android.support.design.widget.AppBarLayout
    android:id="@+id/appbar"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar">
  <android.support.v7.widget.Toolbar
      android:id="@+id/toolbar"
      android:layout_width="match_parent"
      android:layout_height="?attr/actionBarSize"
      android:background="?attr/colorPrimary"
      app:popupTheme="@style/ThemeOverlay.AppCompat.Light"
      app:layout_scrollFlags="scroll|enterAlways" />
</android.support.design.widget.AppBarLayout>
<android.support.design.widget.FloatingActionButton
           android:id="@+id/location_fab"
           android:layout_width="wrap_content"
           android:layout_height="wrap_content"
           android:layout_gravity="start|bottom"
           android:layout_margin="@dimen/fab_margin"
           android:src="@drawable/ic_location" />
<android.support.design.widget.FloatingActionButton
    android:id="@+id/time_fab"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="center|bottom"
    android:layout_margin="@dimen/fab_margin"
    android:src="@drawable/ic_clock" />
<android.support.design.widget.FloatingActionButton
    android:id="@+id/distance_fab"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="end|bottom"
    android:layout_margin="@dimen/fab_margin" />
</android.support.design.widget.CoordinatorLayout>
<android.support.design.widget.NavigationView
  android:id="@+id/nav_view"
  android:layout_height="match_parent"
  android:layout_width="wrap_content"
  android:layout_gravity="start"
  android:fitsSystemWindows="true"
  app:headerLayout="@layout/nav_header"
  app:menu="@menu/drawer_view" />
</android.support.v4.widget.DrawerLayout>