Я пытаюсь реализовать Map View balloon
для GoogleMaps, но я блокирую с помощью макета всплывающей подсказки.
Размер всплывающей подсказки должен соответствовать размеру контента, однако для него требуется размер фона, который можно нарисовать, поскольку он больше,Поскольку у меня есть довольно большой шарик 9-patch image
, предоставленный кем-то другим, содержимое маленького шарика занимает весь экран (размер для рисования).
Я видел этот связанный вопрос: Как обернуть представления содержимого вместо рисования фона? , что именно то, что я хочу, но у него нет правильного ответа (использование FrameLayout
делаетта же проблема, потому что ImageView
src также примет нарисованный размер, с wrap_content
или fill_parent
).
Вот мой макет:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_height="wrap_content" android:id="@+id/balloon_main_layout"
android:orientation="horizontal" android:clickable="true"
android:focusable="true" android:focusableInTouchMode="true"
android:layout_width="wrap_content" android:background="@drawable/info_bulle_selector">
<LinearLayout android:id="@+id/linearLayout1"
android:layout_height="wrap_content" android:layout_width="0dp"
android:layout_weight="1">
<TextView android:layout_height="wrap_content"
android:layout_width="wrap_content" android:text="TextView"
android:id="@+id/balloon_item_title" android:textColor="#ffffff"></TextView>
</LinearLayout>
<ImageView android:id="@+id/balloon_close"
android:layout_marginLeft="5dp" android:src="@drawable/fermer_selector"
android:scaleType="fitXY" android:layout_height="30dp"
android:layout_width="30dp"></ImageView>
</LinearLayout>
Вот экран с тем, что у меня есть (красное пространство должно быть удалено):
Если у вас есть идея решить эту проблему (которая часто возникает у меня при создании макетов с фоновым изображением), это было бы здорово.
Заранее спасибо.
РЕДАКТИРОВАТЬ:
Здесь png из девяти патчей: ![nine-patch balloon](https://i.stack.imgur.com/GHwOC.png)