Отключить кнопку на основе значения метки - PullRequest
3 голосов
/ 12 сентября 2011

У меня есть UILabel, называемый label, и вы можете добавить или вычесть 1 из него с помощью двух кнопок.Когда вы вычитаете все до 0, я хочу, чтобы кнопка минус перестала работать.И если значение будет добавлено, я хочу, чтобы кнопка минус снова заработала.Вот метод / код, который я использую для кнопки добавления / вычитания:

- (IBAction)addButton1:(id)sender {
    [label setText:[NSString stringWithFormat:@"%d",[label.text intValue] +1]];    
}

код одинаков для обоих методов добавления / вычитания.За исключением +1 в конце -1. ​​

Я пытался :

- (IBAction)addButton1:(id)sender {
    int val = [label.text intValue];

    [label setText:[NSString stringWithFormat:@"%d",[label.text intValue] +1]];    

    if(val - 1 <= 0) { 
        UIButton *button = (UIButton *)sender;
        [button setEnabled:NO]; 
    } 
}

1 Ответ

2 голосов
/ 12 сентября 2011

Попробуйте

- (IBAction)addButton:(id)sender {

    if ( [[label text] intValue] == 0) 
        [minusButton setEnabled:YES];

    [label setText:[NSString stringWithFormat:@"%d",[label.text intValue] +1]];    
}


- (IBAction)subButton:(id)sender {

    [label setText:[NSString stringWithFormat:@"%d",[label.text intValue] -1]];

    if ( [[label text] intValue] == 0) 
        [minusButton setEnabled:NO];

}

Вам просто нужно удерживать указатель на кнопке минус (просто создайте IBOutlet и затем свяжите его с кнопкой, используя IB)

...