2015-03-25 4 views
1

Я пытаюсь настроить действие, которое притворяется диалогом. Я хочу, чтобы она появилась в середине экрана, но это занимает весь экран вместо того, чтобы, показывая только серый ...Активность диалогового окна Android выводит весь экран вместо диалога

Я RelativeLayout, вот мой код и скриншот -

<RelativeLayout 
xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:tools="http://schemas.android.com/tools" 
android:theme="@android:style/Theme.Dialog" 
android:layout_width="wrap_content" 
android:layout_height="wrap_content" 
android:layout_centerHorizontal="true" 
tools:context=".TodoListManagerActivity"> 

<EditText 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:minHeight="60dp" 
    android:id="@+id/et_add_dialog_text" 
    android:hint="@string/addDialogInsertTextHere" 
    /> 

<DatePicker 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:calendarViewShown="false" 
    android:id="@+id/dp_add_dialog_date" 
    android:layout_below="@+id/et_add_dialog_text" /> 

<Button 
     style="?android:attr/buttonStyleSmall" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="Add!" 
     android:id="@+id/btn_add_dialog_add" 
     android:layout_below="@id/dp_add_dialog_date" 
     android:layout_alignLeft="@id/dp_add_dialog_date" 
    /> 

<CheckBox 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:text="@string/addDialogCheckBoxNoDueDate" 
    android:id="@+id/cbx_add_dialog_no_due" 
    android:layout_below="@id/dp_add_dialog_date" 
    android:layout_centerHorizontal="true" 
    /> 

<Button 
    style="?android:attr/buttonStyleSmall" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:text="Cancel" 
    android:id="@+id/btn_add_dialog_cancel" 
    android:layout_below="@id/dp_add_dialog_date" 
    android:layout_alignRight="@id/dp_add_dialog_date" 
    /> 
</RelativeLayout> 

и скриншот (расточительствованное место был отмечен желтым цветом) - screenshot of the fullscreen activity

Я искал в сети и praticularly на stackoverflow.com, все другие rellevant вопросы, которые были заданы была где-то «alignParentLeft» + «alignParentRight» с два компонента или около того, но я не мог найти такого в мой код.

Заранее благодарим за вас! :)

ответ

2

Вы должны установить тему действия (которая притворяется диалогом) в качестве диалога. Введите нижеприведенный код в манифест.

 <activity 
     android:name=".About" 
     android:label="@string/app_name" 
     android:theme="@android:style/Theme.Dialog" 
     > 
     </activity> 

Эта строка важна для того, чтобы ваша деятельность делала вид, как диалоговое окно.

 android:theme="@android:style/Theme.Dialog" 
+1

работал как шарм, спасибо! Я добавил его сначала в макет мероприятия, не знал, что он должен быть в манифесте также :) –

+1

Рад, что это помогло вам ... Отметьте, что ответ будет правильным, если вы получили решение @ Re'em – Ganesh

Смежные вопросы