Java 膨胀类com.google.android.gms.maps.MapView时出错
我改变了我的代码如下Java 膨胀类com.google.android.gms.maps.MapView时出错,java,android,xml,google-maps,android-layout,Java,Android,Xml,Google Maps,Android Layout,我改变了我的代码如下 @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); try { setContentView(R.layout.harita); } catch (Exception e) { e.pr
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
try
{
setContentView(R.layout.harita);
}
catch (Exception e)
{
e.printStackTrace();
}
boolean kontrol = true;
Bundle bundle = getIntent().getExtras();
String enlem = "";
if(bundle.getString("enlem") != null)
{
enlem = bundle.getString("enlem");
}
else
{
kontrol = false;
}
String boylam = "";
if(bundle.getString("boylam") != null)
{
boylam = bundle.getString("boylam");
}
else
{
kontrol = false;
}
String baslik = "";
if(bundle.getString("baslik") != null)
{
baslik = bundle.getString("baslik");
}
else
{
kontrol = false;
}
if (kontrol == true) {
GoogleMap map = ((MapFragment) getFragmentManager().findFragmentById(R.id.haritaFragment)).getMap();
LatLng position = new LatLng(Double.parseDouble(enlem),Double.parseDouble(boylam));
map.setMyLocationEnabled(true);
map.moveCamera(CameraUpdateFactory.newLatLngZoom(position, 13));
map.addMarker(new MarkerOptions().title(baslik).snippet("Baslik").position(position));
}
}
和我的布局
<?xml version="1.0" encoding="utf-8"?>
<fragment xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/haritaFragment"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:name="com.google.android.gms.maps.MapFragment"/>
我还将此代码添加到Manifest.xml中
<meta-data
android:name="com.google.android.gms.version"
android:value="@integer/google_play_services_version" />
它的值与strings.xml中的值类似
<?xml version="1.0" encoding="utf-8"?>
<resources>
<integer name="google_play_services_version">4030500</integer>
</resources>
4030500
我换了密码。现在我在setContentView try catch块上遇到了类似“二进制XML文件行#2:错误膨胀类片段”的错误。使用以下布局:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:map="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<fragment
android:id="@+id/map"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:name="com.google.android.gms.maps.MapFragment"/>
</LinearLayout>
可能出现的问题:
- 您可能需要封装您的片段
- 您的API级别应该超过8
- 您应该从项目->属性->Android添加库
- 如果您正在同一个工作区中运行地图演示,我建议将其删除
- 此问题似乎与设备无关,但请尝试在设备上测试,而不是在模拟器上
将此添加到您的清单中。查看我的答案…@thrasheadMyabe您需要在项目中设置与google play services库的链接