2012-06-15 4 views
1

Я изучаю iOS от iTunes U и пытается построить программируемый калькулятор. Я добавил три переменные, которые пользователь может использовать для выделения значений. Я понимаю, что переменные будут переданы как объекты NSString, а затем пользователь коснется чисел, которые будут переданы как NSNumbers и выделены для переменных. Я не понимаю, как использовать NSArrays и NSDictionary, чтобы присвоить номера этим переменным. Извините за то, что я новичок, но сейчас мне не нравится Документация, так что это нечеткое! Это мой код для добавления цифры на UILabel, а затем использовать его для расчетов:Как использовать NSArray и NSDictionary?

- (IBAction)digitPressed:(UIButton *)sender { 
    NSString *digit = [sender currentTitle]; 
    if (self.userIsInTheMiddleOfEnteringANumber) { 
    self.display.text = [self.display.text stringByAppendingFormat:digit]; 
    everythingBrainLabel.text = [self.everythingBrainLabel.text stringByAppendingFormat:digit]; 
    } else { 
    self.display.text = digit; 
    self.everythingBrainLabel.text = [self.everythingBrainLabel.text stringByAppendingFormat:@" %@", digit]; 
    self.userIsInTheMiddleOfEnteringANumber = YES; 
    } 
} 

я могу получить значения переменных в NSMutableArray но как выделить цифры здесь, просто нажав на цифры после нажатия переменного ? Я добавил NSLog, чтобы проверить, передаются ли переменные, и они отображаются в консоли после нажатия соответствующей переменной.

- (IBAction)variablePressed:(UIButton *)sender { 
    NSString *variablePressed = [sender currentTitle]; 
    NSMutableArray *variableValues = [NSMutableArray arrayWithObjects:variablePressed, nil]; 
    for(int i = 0; i < [variableValues count]; i++) { 
    NSLog(@"%@",[variableValues objectAtIndex:i]); 
    } 
} 
+0

пожалуйста более конкретно ваш вопрос –

+0

я просто хочу, чтобы выделить числа в переменных, чтобы сделать это программируемый калькулятор, например, если пользователь хочет выделить 3 к переменной «х», а затем использовать х в 3 раз и снова в расчете. Как мне это сделать? Любая помощь будет принята с благодарностью. –

ответ

1

Чтобы задать определенное значение для определенных клавиш, вы можете добавить NSMutableDictionary к текущему классу Добавить это как свойство в классе и синтезировать его Теперь, когда вы хотите, чтобы присвоить значение для «х» вам бы сделать следующее

//Add this var in your .h file create a property around it 
NSMutableDictionary *variables; 
//in the .m @synthesize variables; 

При назначении переменной "х"

//for example you want to set varialbe "x" = 20 
int xValue = 20; 
NSString *xVariable = @"x"; 
[variables setObject:[NSNumber numberWithInt:xValue] forKey:xVariable]; 

Получение значения для "х"

//Later on if you want to get x 
NSString *xVariable = @"x"; 
int xValue = [[variables valueForKey:xVariable] intValue]; 
+0

Спасибо, ты указал мне в правильном направлении! –

+0

@SheikhMuhammadUmar приветствую :) –

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