看板 AndroidDev 關於我們 聯絡資訊
※ 引述《codemonkey (程式猿)》之銘言: : 請問一下,TimePicker widget的分鐘項目, : 可以讓他按下+-的時候是以10,30...分鐘來跳動嗎? : 查了一下SDK好像沒有類似的設定 : 另外我本來想自己做一個類似的widget, : 不過Android好像沒有類似TimePicker、 : 有上下限+-按鈕的textbox? : 我之前的寫法如下,不過好像會造成迴圈... : orderTime.setOnTimeChangedListener(new TimePicker.OnTimeChangedListener() { : public void onTimeChanged(TimePicker arg0, int arg1, int arg2) { : orderTime.setCurrentMinute(30); : }} : ); Stackoverflow有人問過, 借他的code用一下... private TimePicker.OnTimeChangedListener mNullTimeChangedListener = new TimePicker.OnTimeChangedListener() { public void onTimeChanged(TimePicker view, int hourOfDay, int minute) { } }; setOnTimeChangedListener(...){ // remove ontimechangedlistener to prevent stackoverflow/infinite loop timePicker.setOnTimeChangedListener(mNullTimeChangedListener); // set minute timePicker.setCurrentMinute(nextMinute); // hook up ontimechangedlistener again timePicker.setOnTimeChangedListener(mStartTimeChangedListener); } 講穿了就是改時間的時候把listener偷換掉改完再設回來(炸 這稍微Google一下就有了wwww -- Beware of bugs in the above code; I have only proved it correct, not tried it. -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 42.72.12.165
codemonkey:這招我有想過,不過感覺很髒...沒想到這是正解...... 02/14 15:31