簡體   English   中英

Android:強制重新建立對話

[英]Android: Force recreation of dialog

我正在使用android datelider自定義對話框類,以便讓用戶編輯表中幾行的日期。

使用dateslider可以限制用戶僅選擇可以指定的最小日期和最大日期之間的日期。

每個表行都需要dateslider來將用戶限制為不同的最小日期和最大日期,但是,由於您在onCreateDialog方法中指定了最小和最大日期,因此我需要能夠在用戶單擊該行時動態修改這些日期。

我試過當用戶單擊對話框時再次調用onCreateDialog方法,並且該對話框已運行,但是未考慮新的限制,建議仍使用原始創建的對話框。

我將如何實現自己的目標?

謝謝,馬克斯。

如果需要在使用前更改對話框,則需要使用onPrepareDialog

更新:

傳遞給onPrepareDialog的對話框是在onCreateDialog中創建的對話框。 修改它,但是您喜歡(不要創建一個新的)。 您可能必須向自定義對話框類中添加一些設置器:

protected void onPrepareDialog(int id, Dialog dialog) {
    switch(id) {
    case YOUR_DIALOG_ID:
        YearMonthDayHourMinute myDialog = (YearMonthDayHourMinute) dialog;
        myDialog.setInitialTime(initialTime);
        myDialog.setMinTime(minTime);
        myDialog.setMaxTime(maxTime);
        break;
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM