iOS-如果取消UIBUTTON动作



我创建了一个按钮,该按钮执行一系列项目(在此代码段中并非全部显示以保持简短)。如果我的NSSTRING(点)大于96,我希望按钮操作取消。例如,通过点击按钮SendMessage执行的任何内容都应完全停止。我现在正在使用以下代码,并且似乎并不能阻止操作完成。知道为什么这可能是?

viewController.h

- (IBAction)sendMessage:(id)sender;
@property (weak, nonatomic) IBOutlet UIButton *sendMessage;

viewController.m

     - (IBAction)sendMessage:(id)sender {
            NSString *points;
            if (hour <= 1) {
                points = @"300";

            } else if (hour > 1 && hour < 9) {
                points = @"600";

            } else if (hour <= 9) {
                points = @"1000";
            } else if (hour < 9 && hour < 24) {
                points = @"1000";

            } else if (hour <= 48) {
                points = @"2000";
            } else if (hour > 48 && hour <= 72) {
                points = @"3000";
            } else if (hour > 72 && hour <= 96) {
                points = @"4000";
            } else if (hour > 96) {
                points = @"5000";
               self.sendMessage.enabled = NO;
              self.exceedsFive.hidden = NO;
            }
 [DIOSNode nodeSave:nodeData success:^(AFHTTPRequestOperation *operation, id responseObject) {

            [self dismissViewControllerAnimated:YES completion:nil];

        } failure:^(AFHTTPRequestOperation *operation, NSError *error) {
            NSLog(@"Node did not save!");
        }];

    }

if (hour > 96)您不希望执行diosnode块。

然后,这样做,添加一个return

else if (hour > 96) {
    points = @"5000";
    self.sendMessage.enabled = NO;
    return;
}

添加一个if语句:

If (points < 500) {
 [DIOSNode nodeSave:nodeData success:^(AFHTTPRequestOperation *operation, id responseObject) {

            [self dismissViewControllerAnimated:YES completion:nil];

        } failure:^(AFHTTPRequestOperation *operation, NSError *error) {
            NSLog(@"Node did not save!");
        }];

最新更新