Android 安卓谷歌地图&x2B;滑动菜单,实现

Android 安卓谷歌地图&x2B;滑动菜单,实现,android,google-maps,android-fragments,Android,Google Maps,Android Fragments,我是编程新手,我曾尝试在滑动菜单中实现谷歌地图,在家里,这就是片段 <RelativeLayout 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" tools:context="com

我是编程新手,我曾尝试在滑动菜单中实现谷歌地图,在家里,这就是片段

<RelativeLayout 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"
tools:context="com.moictab.decanias.MapActivity$PlaceholderFragment" >

<fragment 

          android:id="@+id/map"
          android:layout_width="match_parent"
          android:layout_height="match_parent"
          android:name="com.google.android.gms.maps.MapFragment"

          />

</RelativeLayout>
}

但我得到了这些错误

mTransaction.add(R.id.map, mFRaFragment);
FragmentTransaction类型中的add(int,Fragment)方法不适用于参数(int,SupportMapFragment)

对于HomeFragment类型,未定义getApplicationContext()方法

解决办法是:

public class HomeFragment extends FragmentActivity {
在这个类中一切正常,但在MainActivity中是不可接受的,因为有extends Fragment,我已经尝试将其更改为FragmentActivity,但替换不起作用:

    if (fragment != null) {
        FragmentManager fragmentManager = getFragmentManager();
        fragmentManager.beginTransaction()
                .replace(R.id.frame_container, fragment).commit();
消息:“FragmentTransaction类型中的方法replace(int,Fragment)不适用于参数(int,FragmentActivity)”

我已经尝试过使用android.support.v4.app.Fragment,但它也不起作用。 我的问题是在导航抽屉中实现谷歌地图android

/**
 * Diplaying fragment view for selected nav drawer list item
 * */
private void displayView(int position) {
    // update the main content by replacing fragments
    Fragment fragment = null;
    switch (position) {
    case 0:
        fragment = new HomeFragment();
        break;
    case 1:
        fragment = new FindPeopleFragment();
        break;
    case 2:
        fragment = new PhotosFragment();
        break;
    case 3:
        fragment = new CommunityFragment();
        break;
    case 4:
        fragment = new PagesFragment();
        break;
    case 5:
        fragment = new WhatsHotFragment();
        break;

    default:
        break;
    }

    if (fragment != null) {
        FragmentManager fragmentManager = getFragmentManager();
        fragmentManager.beginTransaction()
                .replace(R.id.frame_container, fragment).commit();

        // update selected item and title, then close the drawer
        mDrawerList.setItemChecked(position, true);
        mDrawerList.setSelection(position);
        setTitle(navMenuTitles[position]);
        mDrawerLayout.closeDrawer(mDrawerList);
    } else {
        // error in creating fragment
        Log.e("MainActivity", "Error in creating fragment");
    }
}
我看到了太多的方法,但它们都不起作用,就像这样:

map = ((SupportMapFragment) getSupportFragmentManager()
        .findFragmentById(R.id.map)).getMap();
还有进口

导入android.support.v4.app.FragmentActivity; 在执行此操作之前,右键单击项目->属性->构建路径->java构建路径->库。。然后单击addexternaljars

\android-sdks\extras\android\support\v4

and select android-support-v4.jar

正如您收到的错误所述:

原因:java.lang.IllegalStateException:应用程序的AndroidManifest.xml中的元数据标记没有正确的值。应为4452000,但找到0。元素中必须有以下声明:


因此,您需要将此元数据元素添加到应用程序配置单元下的清单文件中:

<meta-data 
android:name="com.google.android.gms.version" 
android:value="@integer/google_play_services_version" />


Hi。。你找到解决办法了吗??你用谷歌地图实现幻灯片菜单了吗?是的,我做到了,伙计。你需要帮助吗?现在我找到了解决办法。但在获取gps位置并在地图上显示时发生了意外。我的应用程序在emulator中运行良好。但当我尝试在三星运行该应用程序时,我注意到该应用程序正在崩溃-(这是我的电子邮件:mdq767@gmail.com.很高兴能帮助我。
\android-sdks\extras\android\support\v4

and select android-support-v4.jar
<meta-data 
android:name="com.google.android.gms.version" 
android:value="@integer/google_play_services_version" />
<meta-data 
android:name="com.google.android.gms.version" 
android:value="@integer/google_play_services_version" />