2013-12-25 1 views
1

У меня есть progressDialog, который работает, но не соответствует моим потребностям extetical:на заказ цвет фона для ProgressDialog

enter image description here

Я хотел бы сделать это следующим образом:

enter image description here

Что я пробовал:

1 - Тематизация (как с стилем только и стилем + тематическими методами), как описано здесь
Результат был ужасен (я получил дополнительную рамку вокруг диалога в том же синем цвета и дополнительной прокладки вокруг заголовка с тем, что по умолчанию сероватого цвета)

Другими словами, я получил somethig так:

enter image description here

2 - Расширение ProgressDialog класса и придавая ему собственный макет, без какого-либо успеха

Я получил кучу различных ошибок, и я сделал большой беспорядок, пытаясь исправить это одно, этот другой один, ... нет way !!

Теперь я знаю, что кто-то сделал это раньше ... Покажите мне свет, пожалуйста!

Некоторый код, чтобы показать вам, как я делаю это на самом деле

В декларациях у меня есть:

ProgressDialog pbrDlg = null; 

Затем в меню выбора у меня есть:

case R.id.mnuBack: 
case R.id.mnuRest: 
{ 
    // Backup or Restore 
    // Instantiate a new progress dialog 
    pbrDlg = new ProgressDialog(ACT_Base.this); 

    // Spinner (wheel) style dialog 
    pbrDlg.setProgressStyle(ProgressDialog.STYLE_SPINNER); 

    String str = ""; 
    if (itm.getItemId() == R.id.mnuBack) 
    { 
     pbrDlg.setIcon(android.R.drawable.ic_menu_save); 
     pbrDlg.setTitle(getString(R.string.data_save)); 
     str = "save"; 
    } 
    else 
    { 
     pbrDlg.setIcon(android.R.drawable.ic_menu_revert); 
     pbrDlg.setTitle(getString(R.string.data_load)); 
     str = "load"; 
    } 
    pbrDlg.setMessage(getString(R.string.data_msg)); 

    // Display the dialog 
    pbrDlg.show(); 

    // Start the async task 
    new Data_ImpEx_Task(str).execute(); 

    break; 
} 
+0

Любая помощь здесь: http://stackoverflow.com/questions/5401061/change-progressdialog-and-alertdialog-background-in-android – Niko

+0

Каков минимальный уровень API, который вы планируете поддерживать? – GareginSargsyan

+0

Я поддерживаю API-уровень 8+ (От 2,2 до ... бесконечный) –

ответ

1

Я, наконец, удалось в решении моей проблемы.

Я использовал DialogFragment, который я настроил в каждой части, чтобы он выглядел как ProgressDialog.

В конце концов, я делаю то же самое для показа предупреждений и Подтверждения, так что ...

Это результат я получил:

enter image description here

Я просто вибрировать икону голубой оттенок, и это почти идеально.

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