Функция с переменной шторкой для кнопки xcode - PullRequest
1 голос
/ 18 января 2011

Привет, у меня проблема: я не могу отправить параметр для функции

-(IBAction)ukazObrat:(NSInteger *)cis {     
    stvrtyViewController *screen = [[stvrtyViewController alloc] initWithNibName:nil bundle:nil];
    screen.modalTransitionStyle = UIModalTransitionStyleCoverVertical;
    [self presentModalViewController:screen animated:YES];
    screen.obratLabel.font = [UIFont systemFontOfSize: 12];
    screen.obratLabel.numberOfLines = 0;
    screen.obratLabel.text = [array objectAtIndex:cis];
    [screen release];   
}

Я установил эту функцию на нажатие кнопки, но не могу скомпилировать ее, когда добавляю в нее параметр.

button = [UIButton buttonWithType:UIButtonTypeRoundedRect];
[button.titleLabel setLineBreakMode:UILineBreakModeWordWrap];    
[button.titleLabel setTextAlignment:UITextAlignmentLeft];       
button.contentHorizontalAlignment = UIControlContentHorizontalAlignmentLeft;
[button setTitle:obratLable forState:UIControlStateNormal];
[button addTarget:self 
           action:@selector([self ukazObrat:minus]
 forControlEvents:UIControlEventTouchDown];             
button.frame = CGRectMake(0.0, 0.0, 250.0, 60.0);

Это работало, пока я не добавил туда переменную.пожалуйста помогите

Ответы [ 2 ]

2 голосов
/ 18 января 2011
[button addTarget:self action:@selector(buttonHandler) forControlEvents:UIControlEventTouchDown];  

Затем определите buttonHandler как:

- (void)buttonHandler {
  [self ukazObrat:minus];
}

Управление minus, однако необходимо.

1 голос
/ 18 января 2011

Вы не можете установить переменную в определение селектора. Определение может содержать только имя функции. А количество двоеточий покажет компилятору, сколько параметров требуется этой функции. Селектор для кнопки может иметь один аргумент - указатель на кнопку отправителя события. Если вы хотите отправить некоторые данные с одного контроллера на другой, вам следует создать общее хранилище для этих данных.

Я использую для этой цели одноэлементный класс с изменяемым словарем внутри него.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...