2013-12-15 3 views
0

Я собираюсь создать обратный отсчет функцииПолучить целое число от UIAlertView

По

пресс ADDTIMEBUTTON> UIAlert, чтобы получить номер> нажмите Start

я путать о том, как получить номер

int number; 

- (void)alertView:(UIAlertView *)alertView didDismissWithButtonIndex:(NSInteger)buttonIndex { 
    number = [[[alertView textFieldAtIndex:0] text] intValue]; 
} 

- (IBAction)AddTimeButton:(id)sender { 

    //get number 
    UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"GET TIME" 
                message:@"How many Seconds" 
                delegate:nil 
              cancelButtonTitle:@"Dismiss" 
              otherButtonTitles:@"Enter", nil]; 

    [alert setAlertViewStyle:UIAlertViewStylePlainTextInput]; 
    [alert show]; 
    [[alert textFieldAtIndex:0] resignFirstResponder]; 
} 

- (IBAction)buttonCountPressed:(id)sender { 
    self.displaycount.text = [NSString stringWithFormat:@"%d", number]; 
} 

Извините, о моем английском.

Спасибо.

ответ

0

Во-первых, метод вы используете didPresentAlertView: называется четной, прежде чем вводить что-либо в текстовом поле. Используйте метод alertView:didDismissWithButtonIndex: делегата для установки номера.

Во-вторых, вы используете int number для получения номера (который никогда не был установлен), когда вы пытались установить число во временной переменной NSString *number.

ли что-то вроде этого, чтобы исправить эти проблемы:

- (void)alertView:(UIAlertView *)alertView didDismissWithButtonIndex:(NSInteger)buttonIndex { 
    number = [[[alertView textFieldAtIndex:0] text] intValue]; 
} 
+0

В параметре делегирования набора Alertview ** self ** вместо ** nil ** – nomann

0

вы должны установить делегат предупреждения.

UIAlertView *alert = [[UIAlertView alloc] 
    initWithTitle:@"GER TIME" message:@"How many Seconds" 
    delegate:self cancelButtonTitle:@"Dismiss" otherButtonTitles:@"Enter", nil]; 

и осуществлять UIAlertView делегатом

- (void)didPresentAlertView:(UIAlertView *)alertView{ 
    self.displaycount.text = [[alertView textFieldAtIndex:0] text]; 
} 
+0

я сделал с вашим предлагают это работа :) но мой номер не изменить – Barbiyong

+0

вы забыли установить 'делегат: сделал self'.and вашего Класс реализует делегат UIAlertView? – johnMa

Смежные вопросы