Khi tôi nhấp vào một điểm đánh dấu, xuất hiện một quả bóng. Nhưng có quá không gian giữa điểm đánh dấu và quả bóng, vậy làm thế nào tôi có thể giảm khoảng cách này ?. Nó giống như sử dụng phương pháp setBalloonBottomOffset
trong V1 Google Map
.Làm thế nào để bù đắp chế độ xem bóng trong một điểm đánh dấu trong Google Map V2?
My custom balloon
là lớp này:
public class CustomInfoWindowAdapter implements InfoWindowAdapter {
private final View mWindow;
private final View mContents;
public CustomInfoWindowAdapter(Activity activity) {
LayoutInflater inflater = (LayoutInflater) activity.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
mWindow = inflater.inflate(R.layout.ballon, null);
mContents = inflater.inflate(R.layout.ballon, null);
}
@Override
public View getInfoWindow(Marker marker) {
render(marker, mWindow);
return mWindow;
}
@Override
public View getInfoContents(Marker marker) {
render(marker, mContents);
return mContents;
}
private void render(Marker marker, View view) {
String title = marker.getTitle();
TextView titleUi = ((TextView) view.findViewById(R.id.txtTitle));
if (title != null) {
titleUi.setText(title);
} else {
titleUi.setText("");
}
String snippet = marker.getSnippet();
TextView snippetUi = ((TextView) view.findViewById(R.id.txtPlace));
if (snippet != null) {
snippetUi.setText(snippet);
} else {
snippetUi.setText("");
}
}
}
tôi thấy một dấu hiệu như
marker.showInfoWindow();
bóng xml của tôi là
<RelativeLayout
android:layout_width="250dp"
android:layout_height="75dp"
android:background="@drawable/ballon" >
<RelativeLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<LinearLayout
android:id="@+id/linearLayout1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:orientation="vertical" >
<TextView
android:id="@+id/txtTitle"
style="@style/Ballon_Title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ellipsize="end"
android:paddingLeft="15dp"
android:paddingRight="50dp"
android:paddingTop="10dp"
android:singleLine="true"
android:text="Con mis amigos amigos" />
<TextView
android:id="@+id/txtPlace"
style="@style/Ballon_Place"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ellipsize="end"
android:paddingBottom="20dp"
android:paddingLeft="15dp"
android:paddingRight="50dp"
android:singleLine="true"
android:text="Puerta del sol" />
</LinearLayout>
</RelativeLayout>
<RelativeLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
</RelativeLayout>
<ImageView
android:id="@+id/imageView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:paddingRight="12dp"
android:paddingTop="18dp"
android:src="@drawable/icon_arrow" />
</RelativeLayout>
Bạn có thể thêm ảnh chụp màn hình để chúng tôi có thể thấy lỗi không? Tôi sẽ khuyên bạn 1 - return null; 'bên trong' getInfoContents' 2-thổi phồng khung nhìn bên trong 'getInfoWindow'. Không sử dụng lại. –
Nó không có bất kỳ lỗi nào. Vấn đề chính là khoảng cách giữa điểm đánh dấu và bong bóng, khi tôi có nhiều bài thơ, người dùng không biết poi nào đã nhấp vào. Vì vậy, nếu nó rất khó để sửa chữa nó, tốt nhất để rời khỏi nó. – beni