我已经搜索了这个问题的答案,但没有一个答案对我有帮助。
问题是我有一个DialogFragment,当用户添加一个小部件时(作为WidgetConfig的一部分)显示。它看起来像这样:
对话框就像这样创建;
致电活动:
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 :(得分: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);