我在xml中有这个布局。当我在底部运行活动时,除按钮外没有任何显示。
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:orientation="vertical"
android:layout_height="fill_parent">
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:orientation="horizontal"
android:layout_height="fill_parent">
<Button
android:id="@+id/sat"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Satellite"
android:onClick="myClickHandler"
android:padding="8px"/>
<Button
android:id="@+id/street"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Street"
android:onClick="myClickHandler"
android:padding="8px"/>
<Button
android:id="@+id/traffic"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Traffic"
android:onClick="myClickHandler"
android:padding="8px"/>
<Button
android:id="@+id/normal"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Normal"
android:onClick="myClickHandler"
android:padding="8px"/>
</LinearLayout>
<com.google.android.maps.MapView
android:id="@+id/mapView"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:clickable="true"
android:apiKey=
/>
</LinearLayout>
出于某种原因,我唯一可以看到的是顶部的按钮。我的活动运行时,地图不会显示。
这是我在MapActivity中的代码。
public class meeting_map extends MapActivity{
private MapView mapView;
@Override
protected void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.mapview);
mapView = (MapView)findViewById(R.id.mapView);
mapView.setBuiltInZoomControls(true);
}
public void myClickHandler(View target){
switch(target.getId()){
case R.id.sat:
mapView.setSatellite(true);
break;
case R.id.street:
mapView.setStreetView(true);
break;
case R.id.traffic:
mapView.setTraffic(true);
break;
case R.id.normal:
mapView.setSatellite(false);
mapView.setTraffic(false);
mapView.setStreetView(false);
break;
}
}
@Override
protected boolean isLocationDisplayed(){
return false;
}
@Override
protected boolean isRouteDisplayed() {
// TODO Auto-generated method stub
return false;
}
}
也许我错过了什么。
答案 0 :(得分:1)
如果你改变第二个LinearLayout的android:layout_height =“fill_parent”到android:layout_height =“wrap_content”和MapView的android:layout_height =“wrap_content”到android:layout_height =“fill_parent”那么它应该可以工作(假设您在AndroidManifest.xml文件中设置了有效的API密钥+ android.permission.INTERNET。)