将导航抽屉添加到现有的 Android Google 地图
Add Navigation Drawer to Exsisting Andrdoid Google Map
我正在开发 Android Google 地图项目。
这就是我想要的。
默认屏幕就像 this and when drawer page must like this
我已经完成了 google 地图部分并创建了一个新的导航抽屉 Activity。我应该如何连接这两个?我的意思是,如何将导航抽屉下的屏幕设置为我的地图页面?
已经试过了,
@Override
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
FragmentTransaction tx = getSupportFragmentManager().beginTransaction();
tx.replace(R.id.content_frame, new Fragment1());
tx.commit();
}
没有成功。
请帮忙。这可能是一个愚蠢的问题。但是,我是 Andrdoid 的新手。
谢谢
-编辑-
这是 activity_maps.xml
<fragment xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/map" tools:context=".MapsActivity"
android:name="com.google.android.gms.maps.SupportMapFragment" />
这里是activity_navigation.xml
<android.support.v4.widget.DrawerLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true">
<include layout="@layout/activity_maps"/>
<android.support.design.widget.NavigationView
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_gravity="start"
app:headerLayout="@layout/drawer_header"
app:menu="@menu/drawer"/>
这是drawer_header.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="192dp"
android:background="?attr/colorPrimaryDark"
android:padding="16dp"
android:theme="@style/ThemeOverlay.AppCompat.Dark"
android:orientation="vertical"
android:gravity="bottom">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Abc"
android:textAppearance="@style/TextAppearance.AppCompat.Body1"/>
</LinearLayout>
这是drawer.xml
(菜单)
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<group android:checkableBehavior="single">
</group>
<item android:title="Sub items">
<menu>
</menu>
</item>
</menu>
我找不到发生了什么事。但是,我仍然遇到与此代码相同的错误。
按照以下步骤操作。
右键单击您的 Android Studio 项目
Select新建->Activity->导航抽屉Activity
命名并创建导航抽屉activity
打开activity_drawer.xml
添加以下代码<include layout="@layout/activity_maps"/>
你会得到你的答案
希望这会有所帮助。 :)
我正在开发 Android Google 地图项目。
这就是我想要的。
默认屏幕就像 this and when drawer page must like this
我已经完成了 google 地图部分并创建了一个新的导航抽屉 Activity。我应该如何连接这两个?我的意思是,如何将导航抽屉下的屏幕设置为我的地图页面?
已经试过了,
@Override
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
FragmentTransaction tx = getSupportFragmentManager().beginTransaction();
tx.replace(R.id.content_frame, new Fragment1());
tx.commit();
}
没有成功。
请帮忙。这可能是一个愚蠢的问题。但是,我是 Andrdoid 的新手。
谢谢
-编辑-
这是 activity_maps.xml
<fragment xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/map" tools:context=".MapsActivity"
android:name="com.google.android.gms.maps.SupportMapFragment" />
这里是activity_navigation.xml
<android.support.v4.widget.DrawerLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true">
<include layout="@layout/activity_maps"/>
<android.support.design.widget.NavigationView
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_gravity="start"
app:headerLayout="@layout/drawer_header"
app:menu="@menu/drawer"/>
这是drawer_header.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="192dp"
android:background="?attr/colorPrimaryDark"
android:padding="16dp"
android:theme="@style/ThemeOverlay.AppCompat.Dark"
android:orientation="vertical"
android:gravity="bottom">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Abc"
android:textAppearance="@style/TextAppearance.AppCompat.Body1"/>
</LinearLayout>
这是drawer.xml
(菜单)
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<group android:checkableBehavior="single">
</group>
<item android:title="Sub items">
<menu>
</menu>
</item>
</menu>
我找不到发生了什么事。但是,我仍然遇到与此代码相同的错误。
按照以下步骤操作。
右键单击您的 Android Studio 项目
Select新建->Activity->导航抽屉Activity
命名并创建导航抽屉activity
打开
activity_drawer.xml
添加以下代码
<include layout="@layout/activity_maps"/>
你会得到你的答案
希望这会有所帮助。 :)