2013-08-15 4 views
0

У меня есть математическая игра, и я хочу, чтобы пользователь мог прикоснуться к кнопкам, прямо сейчас он будет работать только в том случае, если у меня есть одна кнопка, заданная в качестве правильного ответа. Можно ли сделать комбинацию кнопок, например, если ответ будет 53, пользователь может коснуться кнопки 5 и 3.математическая игра викторины с несколькими ответами

ViewController.m

- (IBAction) EasyLevel: (идентификатор) отправитель {

Question.hidden = NO; 
SelectLevel.hidden = YES; 

buttonOne.hidden = YES; 
buttonTwo.hidden = YES; 
buttonThree.hidden = YES; 
buttonFour.hidden = YES; 
buttonFive.hidden = YES; 
buttonSix.hidden = YES; 
buttonSeven.hidden = YES; 
buttonEight.hidden = YES; 
buttonNine.hidden = YES; 
buttonZero.hidden = YES; 

Right1.hidden = YES; 
Right2.hidden = YES; 
Right3.hidden = YES; 
Right4.hidden = YES; 
Right5.hidden = YES; 
Right6.hidden = YES; 
Right7.hidden = YES; 
Right8.hidden = YES; 
Right9.hidden = YES; 
Right0.hidden = YES; 

Wrong1.hidden = YES; 
Wrong2.hidden = YES; 
Wrong3.hidden = YES; 
Wrong4.hidden = YES; 
Wrong5.hidden = YES; 
Wrong6.hidden = YES; 
Wrong7.hidden = YES; 
Wrong8.hidden = YES; 
Wrong9.hidden = YES; 
Wrong0.hidden = YES; 



int EasyQuestion = arc4random() % 2 ; 
switch (EasyQuestion) { 

    case 0: 
     Question.text = [NSString stringWithFormat: @"What is 4 X 2"]; 
     Right1.hidden = NO; 

     Wrong3.hidden = NO; 
     Wrong4.hidden = NO; 
     Wrong5.hidden = NO; 
     Wrong6.hidden = NO; 
     Wrong7.hidden = NO; 
     Wrong8.hidden = NO; 
     Wrong9.hidden = NO; 
     Wrong0.hidden = NO; 

     buttonOne.hidden = NO; 
     buttonTwo.hidden = NO; 
     buttonThree.hidden = NO; 
     buttonFour.hidden = NO; 
     buttonFive.hidden = NO; 
     buttonSix.hidden = NO; 
     buttonSeven.hidden = NO; 
     buttonEight.hidden = NO; 
     buttonNine.hidden = NO; 
     buttonZero.hidden = NO; 

     buttonOne.text = [NSString stringWithFormat: @"1"]; 
     buttonTwo.text = [NSString stringWithFormat: @"2"]; 
     buttonThree.text = [NSString stringWithFormat: @"3"]; 
     buttonFour.text = [NSString stringWithFormat: @"4"]; 
     buttonFive.text = [NSString stringWithFormat: @"5"]; 
     buttonSix.text = [NSString stringWithFormat: @"6"]; 
     buttonSeven.text = [NSString stringWithFormat: @"7"]; 
     buttonEight.text = [NSString stringWithFormat: @"8"]; 
     buttonNine.text = [NSString stringWithFormat: @"9"]; 
     buttonZero.text = [NSString stringWithFormat: @"0"]; 
     break; 

     case 1: ..... 
     default: 
     break; } 

Любая помощь приветствуется, спасибо :) Стефани

+1

Вы считали использование массивов и петель вместо того, чтобы писать одно и то же десять раз? –

ответ

0

Хитрость заключается в том, как знает программа когда пользователь вводит цифры, нажимая кнопки?

Один из подходов может заключаться в том, чтобы сделать ответ редактируемым текстовым полем (UITextField) и установить для него фокус и установить клавиатуру как клавиатуру с номерами (через протокол UITextInputTraits, который UITextField реализует), чтобы пользователь мог ввести числовые значения.

Если вы не хотите использовать клавиатуру iOS и просто хотите использовать свои собственные кнопки, вы можете использовать свои собственные кнопки и активировать действие для каждой кнопки, чтобы добавить соответствующую цифру в строку ответа, которую вы можете отобразить в UILabel и обновить, когда они нажимают кнопки. Вы хотите иметь кнопку «Назад/Удалить», чтобы они могли стереть цифры и обновить строку там. С этой моделью у вас, вероятно, будет кнопка «ok» или «done», чтобы они указали, что они сделаны, и текущая строка является их ответом. Эта кнопка будет той, которая берет строку в строке ответа в этой точке и проверяет ее на правильность/неправильность.

надеюсь, этого достаточно, чтобы вы пошли!

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