Почему я не вижу нужного диалогового окна в эмуляторе Motorola Atrix? - PullRequest
2 голосов
/ 13 декабря 2011

Я создал Custom Dialog для своего приложения. Хотя я запускаю это приложение в обычном Samsung Galary Ace, оно отображается правильно на этом устройстве, но в то время как я собираюсь запустить это приложение в Motorola Atrix, пользовательское диалоговое окно не отображается должным образом с границей. , , Пожалуйста, посмотрите изображение Motorola Atrix Emulator с моим настраиваемым диалогом. enter image description here

Должен ли я удалить границу пользовательского диалога или что еще мне нужно сделать, чтобы видеть только мое пользовательское диалоговое окно на любом устройстве? Если мне нужно удалить границу из пользовательского диалога, дайте мне знать, как ??

Спасибо.

Ответы [ 3 ]

3 голосов
/ 13 декабря 2011

Да, вы можете попробовать удалить границу. И установить requestWindowFeature(Window.FEATURE_NO_TITLE); И убедитесь, что вы используете другой класс для диалога, расширив его .fix the height and with for your dialog and then try

Но, как вы сказали, он выглядит иначе только на устройстве Motorola. Тогда трудно сказать, что происходит не так. Важной вещью, которой я хочу поделиться с вами. Я разрабатывал приложение для Motorola Milestone. После его завершения я установил его в Tablet. Затем изменяется размер диалогового окна и его внешний вид. И это было не только с настраиваемым диалоговым окном, но и с диалоговым окном хода выполнения, в котором не было задано никаких свойств. Изменения. Надеюсь, вы поняли мою точку зрения. Наконец, я хочу сказать, что диалог иногда ведет себя неожиданно.

Отредактированный

Создание диалогового класса и его макета

public class DisplayDialog extends Dialog implements {
private ImageButton cancel,submit;
private Context context;
private ProgressDialog pd;

public DisplayDialog(Context c) {
   super(c, R.style.Theme_Dialog_Translucent);
    context = c;
}
@Override
protected void onCreate(Bundle savedInstanceState) 
{
    super.onCreate(savedInstanceState);
    requestWindowFeature(Window.FEATURE_NO_TITLE);
    setCanceledOnTouchOutside(false);
    setContentView(R.layout.dialog);
    email_id = (EditText) findViewById(R.id.email_id);
    cancel = (ImageButton) findViewById(R.id.btn_cancel);
    cancel.setOnClickListener(this);
}

}

Тогда из деятельности просто сделай объект и назови его где угодно

DisplayDialog dd=new DisplayDialog(this);

dd.show()
2 голосов
/ 11 мая 2012

Я знаю, что на это ответили, но вот как я это сделал ...

Я видел это на всех своих телефонах Motorola X2, Razr ... Кажется, это определенно ошибка в стилях Motorola.

Я исправил это, создав собственный стиль и скопировав panel_background из моего \ android-sdk \ platform \ android-10 \ data \ res \ drawable-hdpi и поместив его в свой чертеж. Eclipse не скомпилируется, если я на него ссылаюсь, используя @android: drawable / panel_background.

styles.xml

<style name="Theme.CustomDialog" parent="@android:style/Theme.Dialog">
    <item name="android:windowBackground">@drawable/panel_background</item>
    <item name="android:windowIsFloating">true</item>
    <item name="android:windowContentOverlay">@null</item>
    <item name="android:windowAnimationStyle">@android:style/Animation.Dialog</item>
    <item name="android:windowSoftInputMode">stateUnspecified|adjustPan</item>
</style>

Затем просто вызовите диалог с добавленным параметром Theme

Dialog dialog = new Dialog(this, R.style.Theme_CustomDialog);

Исправлены проблемы с Motorola!

1 голос
/ 01 марта 2012

Дело в том, что в стилях Motorola есть некоторые проблемы, которые переопределяют стили Android по умолчанию.Итак, вы должны просто переопределить эти стили еще раз.

Что касается меня, я создал свою собственную тему и переопределил параметр android:windowBackground.Вы можете использовать свое собственное фоновое изображение, но я просто взял изображение по умолчанию из ресурсов Android.Получившийся стиль выглядел так:

<style name="Theme.GreenDialog" parent="@android:style/Theme.Dialog">
    <item name="android:windowBackground">@drawable/panel_background</item>
</style>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...