Извините, Google Translate делает ошибку, ко многим ошибкам,
Я хочу сделать будильник в XCode, но у меня есть проблема, все работает хорошо, если я использую вид сборщика с датой и временем, но если япереключить вид сборщика в одно только время, невозможно установить будильник, потому что, если я установил будильник в момент времени, прежде чем немедленно позвонить,
как я могу решить, не используя вид сборщика с датой?
Это действие, которое устанавливает будильник.
PS Извините за превью сообщение, может быть, мой английский лучше, чем Google Translate ...
// Set Allarm Uno
-(IBAction)setAlarmUno:(id)sender{
NSLog(@"In Alarm Date");
NSDateFormatter *formatter =
[[[NSDateFormatter alloc] init] autorelease];
NSLog(@"About to Set Date");
AlarmDateUno = [alarmDatePickerUno date];
[formatter setTimeStyle:NSDateFormatterShortStyle];
isAlarmUnoOn = 1;
// Setta la label della data con l'orario
NSString *notifyTime = [[NSString alloc]initWithString:[formatter stringFromDate:AlarmDateUno]];
NSMutableString *alarmString = [[NSMutableString alloc]initWithString:@""];
NSString *temp = [[NSString alloc] initWithString:[formatter stringFromDate:AlarmDateUno]];
[alarmString appendString:temp];
[LabelalarmUno setText:alarmString];
if(clicked == 0)
{
clicked =1;
[btOnOffUno setImage:[UIImage imageNamed:@"OnBtn.png"] forState:UIControlStateNormal];
bellOne.hidden = NO;
}
else
{
clicked = 0;
[btOnOffUno setImage:[UIImage imageNamed:@"OffBtn.png"] forState:UIControlStateNormal];
bellOne.hidden = YES;
isAlarmUnoOn = 0;
Для объединения временипосле установки будильника я использую это:
// CONTROLLO TEMPO UNO
- (void)runTimerUno {
myTickerUno = [NSTimer scheduledTimerWithTimeInterval: 0.5
target: self
selector: @selector(showActivityUno)
userInfo: nil
repeats: YES];
}
- (void)showActivityUno {
NSDateFormatter *formatter =
[[[NSDateFormatter alloc] init] autorelease];
NSDate *date = [NSDate date];
if(isAlarmUnoOn == 1 && AlarmUnoPlaying ==0){
NSLog(@"Going to compare times Uno");
NSDate *d = [date earlierDate:AlarmDateUno];
NSLog(@"Compared Times Uno");
if (d == date) {
NSLog(@"Current time earlier Uno");
}
else if (d == AlarmDateUno) {
AlarmUnoPlaying = 1;
[self playAlarmSoundUno];
}
}
[formatter setTimeStyle:NSDateFormatterMediumStyle];
}
Я пытаюсь интегрировать ваш код в мой без успеха.