Запустите метод после того, как подкласс UIAlertView будет отклонен - PullRequest
2 голосов
/ 25 февраля 2011

Я создаю пользовательскую страницу входа в систему с использованием подкласса UIAlerView.Теперь, когда я нажимаю на кнопку, открывается UIAlertView. Я хочу изменить основной вид, в зависимости от того, какая кнопка нажата.

Но так как вся реализация UIAlerView находится в другом классе, хотя я изменяю представление, оно не сохраняет его, поскольку эта переменная класса не получает своего значения.

Может кто-нибудь помочь мне сэтот?Я могу опубликовать код, если требуется.

Спасибо, Анкита

Ответы [ 2 ]

1 голос
/ 15 марта 2011

Если вы планируете использовать методы делегата, я думаю, вам нужно сослаться на некоторые из этих ссылок.

Как использовать пользовательские делегаты в Objective-C

Как создать делегатов в Objective-C?

http://iosdevelopertips.com/objective-c/the-basics-of-protocols-and-delegates.html

Надеюсь, это поможет вам понять делегатов.

1 голос
/ 25 февраля 2011

Вы можете использовать пользовательский метод init, как показано ниже, для alertView и сохранять _sender в глобальной переменной или переменной класса. как

id sender;
- (id)initWithSender:(id)_sender
{
    self = [super init];
    if (self) {
        sender=_sender;
    }
    return self;
}

из RootVC / bgview инициализируйте alertView следующим образом и определите метод с именем

-(void) alertIndexSelected:(NSInterger) index;</p>

<p>{</p>

<p>//change the backgound view based on button selected
}
в rootvc / вашем главном представлении.
  alertViewobj =[[alertView alloc] initWithSender:self];

когда кнопка выбрана в режиме просмотра оповещений, вызовите приведенный ниже метод, это уведомит ваш rootvc о том, какой индекс оповещения нажат. используйте следующий делегат alertview.

- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex
{
[sender alertIndexSelected: buttonIndex];
}




...