Если вы не хотите создавать диалог, вы можете наложить представления, используя относительную компоновку.
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<LinearLayout android:id="@+id/content"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<TextView android:id="@+id/text"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:text="some content"
android:textSize="70dp"/>
</LinearLayout>
<LinearLayout android:id="@+id/overlay"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="#99000000"
android:clickable="true"
android:visibility="gone">
<EditText android:id="@+id/edittext"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_margin="50dp" />
</LinearLayout>
</RelativeLayout>
Первый LinearLayout (id / content) - это ваша базовая компоновка, куда будет идти ваш обычный контент.
Второй LinearLayout (id / overlay) - это ваш оверлейный макет, который вы хотите показать поверх базового макета.Цвет фона даст вам затемненный фон, и вы можете добавить все, что вы хотите, к этому макету, чтобы сделать наложение.Чтобы показать наложение, просто измените его видимость с gone
на visible
.