хорошо, вот что я сделал ... Я использовал FrameLayout для наложения LinearLayout, где я могу заполнить его View.Вот выдержка из моего кода:
XML:
<FrameLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="1">
<fragment class="com.some.location.to.fragment"
android:id="@+id/fragment"
android:layout_width="match_parent"
android:layout_height="match_parent" />
<LinearLayout
android:id="@+id/overlay_pane"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:visibility="gone"
android:background="@color/transparent">
</LinearLayout>
</FrameLayout>
Затем в моем коде для какой-то кнопки я бы просто добавил View (в вашем случае это может быть просто содержимое диалога)на оверлейную панель LinearLayout.
Пример Java:
ViewGroup container = findViewById(R.id.overlay_pane);
container.setVisibility(View.VISIBLE);
container.addView(some_view_you_inflated);
Но это завышенное представление будет иметь следующий фон: @ drawable / dialog_full_holo_light для хорошего эффекта границы, такого как стиль Сота.
Вы можете найти фон для рисования в вашем SDK в следующей папке
your_SDK_dir / platform / android-12 / data / res / drawable-hdpi / dialog_full_holo_light.9.png
Так что просто скопируйте это в свои рисунки.
Примечание: вы также можете использовать dialog_full_holo_dark или любой другой фон для того же эффекта.
Надеюсь, это поможет:) Дайте мне знать, если мне было неясно в какой-то момент
Примечание : вместо использования фрагмента вы можете просто использовать LinearLayout с match_parent как для layout_width, так и layout_height.И тогда вы заполнили бы этот LinearLayout интерфейсом "background" (в примере вопроса ... это будет карта)