2014-10-08 3 views
0

Я искал ответ на этот вопрос, но ни один из ответов не помог мне.Создайте диалоговое окно с прозрачным фоном

Проблема в том, что у меня есть диалоговое окно Dialog, которое отображается, когда пользователь добавляет виджет (как часть WidgetConfig). Это выглядит следующим образом:

enter image description here

диалоговое окно создается, как это;

Вызов деятельности:

public class AppWidgetConfigure extends Activity { 

    private void setUp(){ 

     //Config widget code removed 

     DialogFragment dialog = new ChooserDialog(); 
     dialog.show(getFragmentManager(), "dialog"); 
    } 
} 

DialogFragment:

public class ChooserDialog extends DialogFragment { 

    @Override 
    public Dialog onCreateDialog(Bundle savedInstanceState) { 

     choices = getResources().getStringArray(R.array.choices); 
     AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());  
     builder.setTitle(getResources().getString(R.string.widget_dialog_chooser_title)); 
     builder.setPositiveButton(getResources().getString(R.string.widget_dialog_chooser_posBtn), this); 
     builder.setNegativeButton(getResources().getString(R.string.widget_dialog_chooser_negBtn), this); 
     builder.setSingleChoiceItems(choices, -1, this); 
     return builder.create(); 

    } 
} 

Я хочу, чтобы диалог, чтобы иметь прозрачный фон. В настоящее время, как показано на рисунке, в качестве фона используется действие WidgetConfigure.

Благодарен за любую помощь.

Маркус

+0

Sanghyun Byun ответил очень адекватно здесь на этот вопрос: http://stackoverflow.com/questions/8045556/cant-make-the-custom-dialogfragment-transparent-over-the- фрагмент Хотя, вероятно, лучше поставить строку кода в onCreateView – user2288580

ответ

0

Использование ниже кода можно получить прозрачный AlertDialog

AlertDialog.Builder builder = new AlertDialog.Builder(getActivity(),android.R.style.Theme_Translucent);

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

что-то вроде этого

View view = getActivity().getLayoutInflater().inflate(R.layout.dialog, null); 
builder.setView(view); 
+0

Спасибо за ваши усилия, я попробую это завтра – Marcus

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