передать переменную между двумя методами - PullRequest
1 голос
/ 21 апреля 2011

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

-(void)some{
NSString *lat = something
NSString *longt = somethingElse
[self test:lat:longt];
}

, а затем

- (IBAction)test:(NSString *)lat:(NSString *)longt{
doSomeThing
}

Но моя проблема в том, что теперь кнопка IBAction активируется без моего нажатия.

как запустить метод IBAction под моим контролем

Ответы [ 4 ]

1 голос
/ 21 апреля 2011

вы не можете передавать произвольные параметры через IBAction, вы можете либо передать элемент управления, отправляющий действие, либо ничего:

-(IBAction)action:(id)sender;
or
-(IBAction)action;
0 голосов
/ 21 апреля 2011

Вы должны использовать void в качестве метода возврата, а не ibaction. Если вам это нужно для каких-то действий, позвоните оттуда.

0 голосов
/ 21 апреля 2011

Метод испытания не должен быть IBAction. Вместо этого сделайте это:

- (void)test:(NSString *)lat:(NSString *)longt{
    //doSomeThing
}

-(IBAction)myAction:(id)sender
{
    //call test from here
    [self some];
}
0 голосов
/ 21 апреля 2011

использование

- (void) test:(NSString *)lat:(NSString *)longt

вместо

- (IBAction)test:(NSString *)lat:(NSString *)longt
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...