-2

アラートでスイッチがオンかオフかを他の詳細とともに表示できるようにする必要があります。詳細はすべて正常に表示されますが、notificationStatus 文字列を追加しようとするとエラーが発生します。「宣言されていない識別子 'notificationStatus' の使用」

-(void) procrastinationNotificationSwitchOnOrOff {

    if (_procrastinationNotificationSwitch.on) {
        _notificationOnOffLabel.text = @"Procrastination Notification On";
        NSString *notificationStatus = @"NOTIFICATION ON";
        NSLog(notificationStatus);
    }
    else {
        _notificationOnOffLabel.text = @"Procrastination Notification Off";
        NSString *notificationStatus = @"NOTIFICATION OFF";
        NSLog(notificationStatus);
    }
}


-(void) presentMessage:(NSString *)message {
    UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Class Stuff" message:message delegate:nil cancelButtonTitle:@"Ok" otherButtonTitles:nil, nil];
    [alert show];

}

-(void) notificationStatus:(NSString *)stat {
   NSString *status = [NSString stringWithFormat:@"%@", stat];

}


-(IBAction)returnKeyButton:(id)sender {
    [sender resignFirstResponder];

    NSString *classNameString = self.className.text;
    NSLog(classNameString);
    NSString *assignmentTitleString = self.assignmentTitle.text;
    NSLog(assignmentTitleString);
    NSString *assignmentDescriptionString = self.assignmentDescription.text;
    NSLog(assignmentDescriptionString);
    NSString *totalStrings = [NSString stringWithFormat:@"%@ %@ %@ %@", classNameString, assignmentTitleString, assignmentDescriptionString, notificationStatus];
    NSLog(totalStrings);

    NSDateFormatter *dateFormatter = [[NSDateFormatter alloc]init];
    dateFormatter.timeZone = [NSTimeZone defaultTimeZone];
    dateFormatter.timeStyle = NSDateFormatterShortStyle;
    dateFormatter.dateStyle = NSDateFormatterShortStyle;

    NSString *dateTimeString = [dateFormatter stringFromDate: dateTimePicker.date];
    NSLog(@"Alarm Set Button Tapped : %@", dateTimeString );
    [self presentMessage:totalStrings];
}


- (void)viewDidLoad
{
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.
    [_procrastinationNotificationSwitch addTarget:self action:@selector(procrastinationNotificationSwitchOnOrOff) forControlEvents:UIControlEventValueChanged];
}
4

2 に答える 2

0

メソッドを持つことで物事を混乱させていると思います

-(void) notificationStatus:(NSString *)stat {
   NSString *status = [NSString stringWithFormat:@"%@", stat];

}

ローカル変数にする方が良いでしょう。操作したい場合は、ゲッターとセッターを使用してください。

于 2013-09-22T23:52:02.503 に答える
0

メソッド procrastinationNotificationSwitchOnOrOff にローカル変数 notificationsStatus があります。また、notificationStatus もあります。プロパティまたはインスタンス変数 notificationStatus がありません。

プロパティ notificationStatus を追加します。メソッド notificationStatus を取り除きます。常に self.notificationStatus を使用して、notificationStatus の読み取りと書き込みを行います。問題が解決しました。

于 2013-09-22T23:51:17.433 に答える