Android 安卓材质对话微调器

Android 安卓材质对话微调器,android,android-spinner,material-design,android-dialog,Android,Android Spinner,Material Design,Android Dialog,我正在使用MaterialDialog.Builder显示一个对话框。 我为对话框设置了自定义视图 在我的布局中,我有一个微调器,我想在显示对话框时从sqlite数据库中填充它 回调函数只有在我按下这些按钮时才起作用。是否有一个函数可以在对话框显示之前使用,并使用我设置为附加微调器的布局 我的代码如下: boolean wrapInScrollView = true; new MaterialDialog.Builder(mContext) .customView(layout, wrapInS

我正在使用MaterialDialog.Builder显示一个对话框。 我为对话框设置了自定义视图

在我的布局中,我有一个微调器,我想在显示对话框时从sqlite数据库中填充它

回调函数只有在我按下这些按钮时才起作用。是否有一个函数可以在对话框显示之前使用,并使用我设置为附加微调器的布局

我的代码如下:

boolean wrapInScrollView = true;
new MaterialDialog.Builder(mContext)
.customView(layout, wrapInScrollView)
.autoDismiss(false)
.negativeText(R.string.text40)
.positiveText(buton)
.callback(new MaterialDialog.ButtonCallback() { ....})
.build()
.show();

谢谢

假设您有
线性布局
,内部有
微调器

  • 自定义
    xml
    文件名为
    “dialogCustom”
  • linearlayout
    id在它里面是
    “linearLayoutMine”
  • spinner
    id-in
    linearlayout
    “mySpinner”


回调仅适用于按下正、负按钮的情况。

另一种可能是分离build()和show()调用,并在build()之后使用getCustomView()

像这样

dlg = new MaterialDialog.Builder(mContext)
    .customView(layout, wrapInScrollView)
    .autoDismiss(false)
    .negativeText(R.string.text40)
    .positiveText(buton)
    .callback(new MaterialDialog.ButtonCallback() { ....})
    .build();


mySpinner = (Spinner)dlg.getCustomView.findViewById(R.id.mySpinner);
// do whatever you need to do with your spinner

// finally show the dialog
dlg.show();
这并不一定比Jemshit建议的方法更好,只是实现结果的另一种方法

dlg = new MaterialDialog.Builder(mContext)
    .customView(layout, wrapInScrollView)
    .autoDismiss(false)
    .negativeText(R.string.text40)
    .positiveText(buton)
    .callback(new MaterialDialog.ButtonCallback() { ....})
    .build();


mySpinner = (Spinner)dlg.getCustomView.findViewById(R.id.mySpinner);
// do whatever you need to do with your spinner

// finally show the dialog
dlg.show();