对话滞后于视图通胀

时间:2018-08-01 09:37:19

标签: android android-dialog

我有一个Dialog和14 Spinner。每个微调框上仅设置了一个Adapter

在对话框上调用.show()会滞后,并在5或6秒后首次显示。下次我只使用hide()show()时,它会完美地工作。 这是MCVE。

class HourDialog extends Dialog {
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    requestWindowFeature(Window.FEATURE_NO_TITLE);
    setContentView(R.layout.dialog_layout);
    setDateAdapter();
}

private void setDateAdapter() {
    ArrayAdapter adapterDate = new ArrayAdapter<>(c, R.layout.spinner_item, R.id.spinner_item_tv, c.getResources().getStringArray(R.array.hours_arrays));
    monSpinnerFrom.setAdapter(adapterDate);
    tueSpinnerFrom.setAdapter(adapterDate);
    wedSpinnerFrom.setAdapter(adapterDate);
    thusSpinnerFrom.setAdapter(adapterDate);
    friSpinnerFrom.setAdapter(adapterDate);
    satSpinnerFrom.setAdapter(adapterDate);
    sunSpinnerFrom.setAdapter(adapterDate);
    monSpinnerTo.setAdapter(adapterDate);
    tueSpinnerTo.setAdapter(adapterDate);
    wedSpinnerTo.setAdapter(adapterDate);
    thusSpinnerTo.setAdapter(adapterDate);
    friSpinnerTo.setAdapter(adapterDate);
    satSpinnerTo.setAdapter(adapterDate);
    sunSpinnerTo.setAdapter(adapterDate);
}
}

我认为我应该想出一个更好的UI / UX,以便在14个微调器之外获得数小时的输入。但是有可能解决此问题吗?我目前正在onCreate()中设置适配器。我还尝试在onShowListener中设置适配器,但没有任何改变。

我认为DialogFragment的效果与Dialog相同。对话主题活动可能是一种解决方案,但我尚未对其进行检查。

0 个答案:

没有答案