kankans
以下のようにAndroid用のホイールウィジェットを使用しています
ImageView setTime = (ImageView) dialog.findViewById(R.id.autodelete);
setTime.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
final Calendar c = Calendar.getInstance();
int hour = c.get(Calendar.HOUR_OF_DAY);
int minute = c.get(Calendar.MINUTE);
SetTime(activity, hour, minute);
}
});
private void SetTime(Context activity, int hour, int minute) {
LayoutInflater inf = LayoutInflater.from(activity);
View view = inf.inflate(R.layout.wheel, null);
final WheelView hours = (WheelView) view.findViewById(R.id.hours);
hours.setViewAdapter(new NumericWheelAdapter(activity, 0, 23,"%02d"));
hours.setCyclic(true);
final WheelView mins = (WheelView) view.findViewById(R.id.minutes);
mins.setViewAdapter(new Mywheel(activity, 0, 59,"%02d"));
mins.setCyclic(true);
new AlertDialog.Builder(activity)
.setMessage("Set Time For Post To AutoDelete")
.setView(view)
.setPositiveButton("Set",
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
expiryHour = hours.getCurrentItem();
if(mins.getCurrentItem() > 0){
expiryMinute = mins.getCurrentItem() + 4;
}else{
expiryMinute = mins.getCurrentItem();
}
}
})
.setNegativeButton("Cancel",
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog,
int which) {
return;
}
}).create().show();
}
時間を開いて設定すると、設定した正しい値が取得されます..問題は、時間を設定してからダイアログを開くと、以前に設定した値が表示されますが、00から始まるように表示されます。感謝