時間の初期値は 10:30 です。また、時間数用と分数用の 2 つの SeekBar があります。
たとえば時間 SeekBar の場合、SeekBar を特定の値にスライドすると、時間数が最初の時間の 10:30 に追加されます。これはうまくいきます。
さらに、SeekBar を新しい値に再度ドラッグすると、最初のドラッグ後に取得した値ではなく、その値を初期値に追加する必要があります。
すなわち。最初に SeekBar を 1 時間にドラッグして SeekBar を離れると、時刻は 11.30 になります。
もう一度値を 3 時間にドラッグすると、3 時間が 11.30 に追加されて時間が 2:30 になりますが、時間を 1:30 にしたいのです
これが私のコードです:-
String initialTime = "10:30"
cal = Calendar.getInstance();
DateFormat sdf = new SimpleDateFormat("hh:mm:ss");
Date date;
try
{
date = sdf.parse(initialTime);
cal= Calendar.getInstance();
cal.setTime(date);
txtReachingBy.setText("Reaching By:"+" "+ cal.get(Calendar.HOUR_OF_DAY)+":"+cal.get(Calendar.MINUTE));
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
seekLateBy.setOnSeekBarChangeListener(new OnSeekBarChangeListener()
{
public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser)
{
progressChangedHours = progress;
if(progressChangedHours==0 && progressChangedMins!=0)
{
lblLateBy.setText("Late By (Hrs):"+" " + String.valueOf(progressChangedHours) +":"+String.valueOf(progressChangedMins));
}
else
lblLateBy.setText("Late By (Hrs):"+" " + String.valueOf(progressChangedHours) +":"+String.valueOf(progressChangedMins));
}
public void onStartTrackingTouch(SeekBar seekBar) {
// TODO Auto-generated method stub
}
public void onStopTrackingTouch(SeekBar seekBar)
{
if(progressChangedHours==0)
{
timeString = cal.get(Calendar.HOUR_OF_DAY)+":"+cal.get(Calendar.MINUTE)+":"+today.second;
}
else
{
cal.add(Calendar.HOUR_OF_DAY, progressChangedHours);
timeString = cal.get(Calendar.HOUR_OF_DAY)+":"+cal.get(Calendar.MINUTE)+":"+today.second;
}
txtReachingBy.setText("Reaching by:"+" "+timeString);
}
});
これどうやってするの/