0

だから私がやろうとしているのは、目覚まし時計を作ることです。現在の時刻を取得するのに問題があり、タイムピッカーの時刻を取得してそれらを比較しています。タイムピッカーの時刻と現在の時刻を同じ種類の測定で取得するだけで、少し助けていただければ幸いです。

ありがとうトン=)これが私のコードです:

public class AlarmlockActivity extends Activity implements OnClickListener {
    TimePicker tp;
    Button set;
    long currentTime;
    long alarmTime;
    long alarmHourmil;
    DigitalClock dc;

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    tp = (TimePicker) findViewById(R.id.tpAlarmTime);
    set = (Button) findViewById(R.id.bSet);
    dc = (DigitalClock) findViewById(R.id.digitalClock1);
    currentTime = System.currentTimeMillis();
    set.setOnClickListener(this);
}

public void onClick(View v) {
    switch(v.getId()){
    case R.id.bSet:
        break;
    }
}
 }
4

1 に答える 1

0

現在の時刻から時間を抽出するだけで、 「タイムピッカーの時刻と現在の時刻を同じ種類の測定で取得できます。

その場合は、Calendarクラス ( docs を参照) を使用して現在の時刻に関する情報を抽出できます。Localeこれは、デフォルトとを使用したい場合を想定したコード例ですTimeZone。そうでない場合は、他の方法を参照してください。 Calendar.getInstance()

// Get Calendar object with current date and time (assumes default Locale and TimeZone).
Calendar calendar = Calendar.getInstance()

// Retrieve info about current time.
int hour = calendar.get(Calendar.HOUR);
int minute = calendar.get(Calendar.MINUTE);

// Compare with values selected in TimePicker
if (tp.getCurrentHour().intValue() == hour) { // similar applies to 'minute'
    // do whatever you want
}
于 2012-07-14T22:09:32.127 に答える