Tôi đang cố gắng tích hợp Google Maps Android API v2 vào Ứng dụng Android của mình. Tôi đang đặt Google Map ở giữa bố cục của tôi. Nó hoạt động tuyệt vời khi bố cục có thể vừa với màn hình, nhưng khi bố cục quá lớn để vừa, và người dùng cuộn xuống để xem phần còn lại của nội dung, phần còn lại của bố cục bị Google Map bôi đen. Xem ảnh chụp màn hình sau đây:Google Maps API Android V2 bôi đen một phần bố cục
(Lưu ý:. Tất cả những cử chỉ bản đồ bị vô hiệu hóa để cho phép người dùng di chuyển)
My layout XML:
<?xml version="1.0" encoding="utf-8"?>
<ScrollView
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:scrollbars="vertical"
android:fillViewport="true" >
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:padding="20sp" >
<TextView
android:id="@+id/race_num"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="14sp"
android:textSize="@dimen/DetailsTop"
android:layout_alignParentLeft="true"
android:layout_toLeftOf="@+id/race_in_chase" />
<TextView
android:id="@id/race_in_chase"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/in_the_chase"
android:textSize="@dimen/DetailsTop"
android:background="@drawable/inthechase"
android:paddingLeft="20sp"
android:paddingRight="20sp"
android:visibility="gone"
android:layout_alignParentRight="true" />
<TextView
android:id="@+id/race_name"
style="@style/RaceDetailsName"
android:layout_below="@id/race_num" />
<TextView
android:id="@+id/race_track"
style="@style/RaceDetailsText"
android:paddingBottom="20sp"
android:layout_below="@id/race_name" />
<TextView
android:id="@+id/race_time"
style="@style/RaceDetailsText"
android:layout_below="@id/race_track" />
<TextView
android:id="@+id/race_tv"
style="@style/RaceDetailsText"
android:layout_below="@id/race_time" />
<fragment
android:id="@+id/map"
android:layout_width="match_parent"
android:layout_height="380dp"
android:layout_marginTop="20sp"
android:layout_marginBottom="20sp"
class="com.google.android.gms.maps.SupportMapFragment"
android:layout_below="@id/race_tv" />
<TextView
android:id="@+id/race_track_size"
style="@style/RaceDetailsText"
android:layout_below="@id/map" />
</RelativeLayout>
</ScrollView>
thiết lập bản đồ của tôi trong Hoạt động của tôi:
private void setUpMapIfNeeded() {
if (mMap == null) {
mMap = ((SupportMapFragment) getSupportFragmentManager()
.findFragmentById(R.id.map)).getMap();
if (mMap != null) {
setUpMap();
}
}
}
private static final LatLng CHICAGOLAND = new LatLng(41.474856, -88.056928);
private void setUpMap() {
mMap.setMapType(GoogleMap.MAP_TYPE_SATELLITE);
mMap.getUiSettings().setZoomControlsEnabled(false);
mMap.getUiSettings().setAllGesturesEnabled(false);
CameraPosition cameraPosition = new CameraPosition.Builder()
.target(CHICAGOLAND)
.zoom(14.5f)
.bearing(53)
.build();
mMap.moveCamera(CameraUpdateFactory.newCameraPosition(cameraPosition));
}
Linh cảm của tôi là đoạn bản đồ không ot như ScrollView kể từ khi bố trí nếu tốt nếu toàn bộ bố trí phù hợp trên màn hình và di chuyển là không cần thiết. Bản thân bản đồ có vẻ là kích thước chính xác. Việc mất điện là kích thước chính xác của các mục còn lại trong chế độ xem. Có ai có bất kỳ ý tưởng làm thế nào tôi có thể thoát khỏi sự mất điện bên dưới bản đồ để tôi có thể nhìn thấy TextView bên dưới nó? Tất cả mọi thứ tôi đã thử cho đến bây giờ đã không làm việc.
Thực sự không nhấp nháy? Tôi đã thử giải pháp này với SlidngMenu, nhưng nó không thay đổi gì cả. Xem này để biết chi tiết: http://stackoverflow.com/questions/14419521/moving-mapfragment-surfaceview-causes-black-background-flickering/14571989#comment20335526_14571989 –
tôi có editTexts dưới bản đồ và tôi sử dụng này, chỉnh sửa văn bản thua tiếp theo tập trung, làm thế nào tôi có thể làm điều đó, hoặc là có một cách khác? – JRowan