我正在尝试将MapView嵌入到活动的FrameLayout中,例如
UserActivity 布局
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<FrameLayout android:id="@+id/map_frame" android:layout_gravity="center_horizontal" android:padding="0.0dip" android:clipChildren="true" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="4.0dip">
<ImageView android:id="@+id/map_img" android:layout_gravity="center" android:layout_width="294.0dip" android:layout_height="136.0dip" android:src="@drawable/place_map_frame" />
</FrameLayout>
</LinearLayout>
这里,在FrameLayout内部,我希望在单击列表项时显示MapView 由于某种原因,它不可能直接放在framelayout中,因为我创建了另一个扩展MapActivity的活动
<com.google.android.maps.MapView
android:layout_gravity="center"
android:id="@+id/mapview"
android:clickable="true"
android:layout_width="294.0dip"
android:layout_height="136.0dip"
android:layout_centerInParent="true"
android:apiKey="@string/google_maps_key" />
UserMap 布局
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<com.google.android.maps.MapView android:layout_gravity="center" android:id="@+id/mapview" android:clickable="true" android:layout_width="294.0dip" android:layout_height="136.0dip" android:layout_centerInParent="true" android:apiKey="@string/google_maps_key" />
</LinearLayout>
以下是这两项活动的代码
import com.google.android.maps.MapActivity;
import android.app.Activity;
import android.os.Bundle;
public class UserMap extends MapActivity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.user_map);
}
@Override
protected boolean isRouteDisplayed() {
// TODO Auto-generated method stub
return false;
}
}
import android.app.Activity;
import android.os.Bundle;
import android.widget.FrameLayout;
import android.widget.ImageView;
public class UserActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.user_activity);
}
}
现在,我想将UserMap嵌入到UserActivity的FrameLayout中,并在单击列表项时调用UserActivity。
答案 0 :(得分:0)
请记住包含Google API而不是单个Android API。
您还需要在<application>
标记下的清单中包含以下行:
<uses-library android:name="com.google.android.maps" />