alterView Text Issue! - PullRequest
       1

alterView Text Issue!

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

Я хочу показать название кнопки на ее щелчке, который выдает всплывающее окно alertView. Я пытался использовать следующий код. Но titleLabel не отображается в alertView.

Код:

-(void) btnAction:(id) sender
{

    BeginingCell *cellObject;
    cellObject=[[BeginingCell alloc]init];
    NSString *str= [[NSString alloc] init];
    str=cellObject.ansBtn1.titleLabel.text;
    UIAlertView *alrt=[[UIAlertView alloc]initWithTitle:str message:str delegate:self cancelButtonTitle:@"Cancel" otherButtonTitles:nil ];
    [alrt show];

}

Может кто-нибудь сказать мне, что не так с приведенным выше кодом?

1 Ответ

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

Есть несколько вопросов:

  1. У вас есть ненужные вызовы alloc / init без соответствующего вызова на release, поэтому вы теряете память.

  2. Вы пытаетесь получить доступ к titleLabel объекта, который вы только что выделили, вместо titleLabel, связанного с кнопкой, которая была нажата (что, я полагаю, является тем, что вам нужно). В зависимости от того, что делает метод init BeginingCell, вы можете получить нулевую строку, строку с некоторым значением по умолчанию или даже сбой из-за попытки получить доступ к полю, которое не было должным образом инициализировано.

  3. Вы также не выпускаете свой UIAlertView, когда закончите с ним.

Возможно, вам повезет больше с чем-то вроде:

-(void) btnAction:(id) sender {
    NSString *str = ((UIButton*)sender).titleLabel.text;
    UIAlertView *alrt=[[UIAlertView alloc]initWithTitle:str message:str 
        delegate:self cancelButtonTitle:@"Cancel" otherButtonTitles:nil ];
    [alrt show];
    [alrt release];
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...