我想在点击按钮后调用Map.java类来显示Google Map。我使用了onClickListener。然后我用一个Intent开始一个活动。对于这个类,我创建了一个布局,在内部,我在流布局中声明了一个片段。
<fragment
android:id="@+id/map"
android:name="com.google.android.gms.maps.SupportMapFragment"
android:layout_width="match_parent"
android:layout_height="match_parent" />
然后我在清单中声明权限如下:
// Permission and Uses-features
<uses-feature android:glEsVersion="0x00020000"
android:required="true" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES"/>
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<meta-data android:name="com.google.android.maps.v2.API_KEY"
android:value="I have a key which provide by Google " />
<meta-data android:name="com.google.android.gms.version"
android:value="@integer/google_play_services_version"/>
但是在模拟器上无法加载它并给我一些跟随错误:
1--- "unfortunately stopped application" to load . 2--- "could not get wglGetExtensionsStringARB" 3--- "Could not initialize OpenglES emulation, using software renderer". 4--- " Failed to create Context 0x3005"
答案 0 :(得分:0)
像这样更改xml代码:
<fragment
android:id="@+id/map"
class="com.google.android.gms.maps.SupportMapFragment"
android:layout_width="match_parent"
android:layout_height="match_parent" />
如果要显示地图,则必须使用真实物理设备而不是模拟器
运行应用程序答案 1 :(得分:0)
将片段android:visibility视为GONE,并将点击设置可见性上的按钮设为Visible
<fragment
android:id="@+id/map"
android:name =&#34; com.google.android.gms.maps.SupportMapFragment&#34; {{1 }}
答案 2 :(得分:0)
您更改了XML代码
<fragment android:id="@+id/map"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:name="com.google.android.gms.maps.MapFragment"></fragment>
在清单
中<uses-sdk
android:minSdkVersion="14"
android:targetSdkVersion="19" />
<uses-feature
android:glEsVersion="0x00020000"
android:required="true"/>
您应该在清单中声明您的活动。
在您的活动课程中
gMap =((MapFragment) getFragmentManager().findFragmentById(R.id.map)).getMap();
在真实设备中运行您的项目。