Не удается удалить заполнение из диалогового окна активности

У меня есть активность в виде всплывающего окна:

[Activity(Theme="@android:style/Theme.Dialog")]
public class GameOverPopup : Activity

Но я всегда застреваю с белым отступом вокруг элементов управления (не обращайте внимания на черную рамку, это не часть всплывающего окна):

введите здесь описание изображения

Я пытался установить отступы, поля и т. Д. На 0dp, но всегда имел дополнительное пространство.

Как я могу удалить его?

ОБНОВЛЕНИЕ:

Поэтому я пробовал следующее в соответствии с предложениями:

В Styles.xml:

<style name="PopupDialog" parent="android:style/Theme.Dialog">
   <item name="android:padding">0dp</item>
</style>

А затем в моей деятельности (в переопределении OnCreate):

SetTheme(Resource.Style.PopupDialog);

Но у меня еще есть прокладка :(


person Maximus    schedule 14.01.2014    source источник
comment
можно фрагмент кода, пожалуйста!!   -  person Jitesh Upadhyay    schedule 14.01.2014
comment
Я не уверен, что еще я могу опубликовать. XML для вышеприведенного всплывающего окна является обычным XML, который не имеет значения, поскольку он содержится внутри диалогового окна.   -  person Maximus    schedule 14.01.2014


Ответы (2)


Насколько я помню, автоматически сгенерированные действия в Eclipse по умолчанию включают поля всей активности Android. Вы можете проверить, удалили ли вы эти строки в макете XML, если использовали шаблон по умолчанию.

EDIT, чтобы обобщить некоторые комментарии и избежать обсуждения: похоже, проблема может быть связана с заполнением по умолчанию в стиле диалогового окна. Попробуйте создать стиль с этим стилем в качестве родителя и вручную установите отступы/поля по мере необходимости: http://developer.android.com/guide/topics/ui/themes.html#DefiningStyles.

person hunt    schedule 14.01.2014
comment
Я не использую Eclipse, это проект Xamarin. Поэтому код написан на C#, а пользовательский интерфейс — в обычном XML для Android. - person Maximus; 14.01.2014
comment
Ах, действительно, извините об этом. Можете ли вы опубликовать XML? - person hunt; 14.01.2014
comment
Нет другого XML, который я могу показать, потому что макет всплывающего окна — это просто обычный макет с использованием LinearLayouts. Тема, на которую я ссылаюсь, - это тема для Android. Мне интересно, есть ли код, который я могу добавить в действие, чтобы вручную удалить отступы? - person Maximus; 14.01.2014
comment
Если вы проверили все атрибуты, которыми вы управляете, возможно, тема диалогового окна, которую вы используете, является источником заполнения. - person hunt; 14.01.2014
comment
Итак, как я могу отредактировать эту тему диалога. Есть ли способ переопределить значения темы android:style/Theme.Dialog? - person Maximus; 14.01.2014
comment
Я считаю, что вы можете создать тему, которая использует Theme.Dialog в качестве родителя (это должно быть довольно просто; см. Определение стилей) - person hunt; 14.01.2014

Понятно!!

Проблема в том, что я установил тему в коде OnCreate ТАКЖЕ как атрибут действия. Поэтому я удаляю код из OnCreate и добавляю следующий атрибут в свой класс активности всплывающего окна:

[Activity(Theme = "@style/PopupDialog")]
public class GameOverPopup : Activity

И мой Styles.xml:

<style name="PopupDialog" parent="android:style/Theme.Dialog">
  <item name="android:windowBackground">@null</item>
  <item name="android:padding">0dp</item>
</style>
person Maximus    schedule 21.01.2014