UIButton селектор выбрасывает «нераспознанный селектор», хотя селектор существует - PullRequest
1 голос
/ 07 февраля 2012

Я создаю 2 кнопки программно на мой взгляд. Оба метода селектора существуют, но он по-прежнему выдает ошибки «нераспознанный селектор». Я читал кое-что о проверке на зомби. Но я активировал его (xcode 4.2) и ничего не увидел ни о каких зомби. Вот код ..

- (void)viewDidLoad
{

    for(int i = 0; i < [list count]; i++){  

     ... if statement checks to add text fields
    }

     UIButton *submit = [UIButton buttonWithType:UIButtonTypeRoundedRect];
     [submit addTarget:self action:@selector(submission:)
     forControlEvents:UIControlEventTouchUpInside];
     [submit setTitle:@"Submit" forState:UIControlStateNormal];
     submit.frame = CGRectMake(x+ 170.0, y, 72, 37);

    UIButton *addition = [UIButton buttonWithType:UIButtonTypeRoundedRect];
    [addition addTarget:self action:@selector(addition:)
    forControlEvents:UIControlEventTouchUpInside];
    [addition setTitle:@"Additional Mission" forState:UIControlStateNormal];
    addition.frame = CGRectMake(x, y, 140, 37);

    y = y+90;
   [inputsView addSubview:submit];
   [inputsView addSubview:addition];
   [inputsView setScrollEnabled:YES];
   [inputsView setContentSize:CGSizeMake(320, y)]; 


}

 - (void)submission{
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Submission Complete" message:@"Submission"
                                               delegate:self cancelButtonTitle:@"No" otherButtonTitles:@"Yes", nil];
[alert show];
}

 -(void)addition{
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Creating Additional Mission" message:@"Additional Mission"
                                               delegate:self cancelButtonTitle:@"No" otherButtonTitles:@"Yes", nil];
[alert show];
}

Одна вещь, которую нужно отметить ... inputView - это UIScrollView, который находится внутри моего viewcontroller.

Заранее спасибо.

Ответы [ 2 ]

5 голосов
/ 07 февраля 2012

удалить двоеточие из методов выбора

1 голос
/ 07 февраля 2012

[дополнение addTarget: самостоятельное действие: @selector (дополнение:)

в этой строке вы говорите, что ваш селектор @selector(addition:) ожидает параметр, который является двоеточием после добавления но в вашем реальном методе

 -(void)addition{

после добавления нет параметра ... вот почему произошел сбой .. удалите двоеточие как при отправке, так и при добавлении, и вам будет хорошо.

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