2013-11-15 86 views
2

我的TimePickerDialog出現問題。 首先檢測如果用戶的設備在12或24小時格式的時間:在Android中顯示12或24小時格式的TimePicker

… 
String format; 
… 
if (DateFormat.is24HourFormat(this)) { 
Log.i("control","Format 24"); 
format=("24"); 
} else { 
Log.i("control","Format 12"); 
format=("12"); 
} 
… 

現在我的目的是要顯示出與上午或下午的選項TimePicker,取決於格式:

… 
if(format.equals("24"){ 
view.setIs24HourView(true); 
} else { 
view.setIs24HourView(true); 
} … 

這是完整的代碼TimePickerDialog:

public class AlarmPreferencesActivity extends ListActivity 
… 
TimePickerDialog timePickerDialog = new TimePickerDialogs(this, new TimePickerDialog.OnTimeSetListener(){ 

      @Override 
      public void onTimeSet(TimePicker view, int hours, int minutes) { 

       Calendar newAlarmTime = Calendar.getInstance(); 
       newAlarmTime.set(Calendar.HOUR_OF_DAY, hours); 
       newAlarmTime.set(Calendar.MINUTE, minutes); 
       newAlarmTime.set(Calendar.SECOND, 0); 
       alarm.setAlarmTime(newAlarmTime); 
       alarmPreferenceListAdapter 
       .setMathAlarm(getMathAlarm()); 
       alarmPreferenceListAdapter 
       .notifyDataSetChanged(); 

      }}, 
      alarm.getAlarmTime().get(Calendar.HOUR_OF_DAY), 
      alarm.getAlarmTime().get(Calendar.MINUTE), true); 


     timePickerDialog.setCancelable(true); 
     timePickerDialog.setCustomTitle(getLayoutInflater().inflate(R.layout.custom_hours, null)); 
     timePickerDialog.show(); 
     } 

我的問題是我不知道在哪裏包括view.setIs24HourView (true)(false)。 我已經嘗試了許多變化,但沒有任何作品。 我搜索了信息,但沒有成功。

+0

您是否閱讀過您正在使用的TimePickerDialog構造函數的文檔? – njzk2

回答

6

F你要在24小時格式的當前時間正確初始化的TimePicker使用以下命令:

import java.util.Calendar; 

timePicker.setIs24HourView(true); 
timePicker.setCurrentHour(Calendar.getInstance().get(Calendar.HOUR_OF_DAY)); 

否則,由於Android的錯誤,機械手將使用不正確的時間(2開始,而不是14等)。 希望這有助於

+0

我的問題不是這樣,但我很欣賞你的興趣。 我想知道的是如何把12或24小時格式的timepicker(TimePicker視圖,int小時等),這取決於用戶的設備。 我timepicker是「公共無效onTimeSet內聲明(TimePicker視圖...) 例如:view.setIs24HourView(真); – Sergio76

+0

你的意思是用戶設備上的默認timepicket格式試試這個DateFormat.is24HourFormat(上下文) –

+0

這是真的,Android有bug,https://code.google.com/p/android/issues/detail?id=18982提到這個 –

相關問題