Неправильный доступ исключение при использовании xcode 4.2 - PullRequest
1 голос
/ 22 ноября 2011

Я получаю «EXC_BAD_ACCESS», когда нажимаю кнопку, чтобы вызвать действие кнопки.

#import "TestViewController.h"

@implementation TestViewController

- (id)init
{
    self = [super init];
    if (self) 
    {
       self.title=@"IOS5 and Xoced 4.2";

        UIButton *button=[[UIButton alloc]initWithFrame:CGRectMake(9,6,100,100)];
        button.backgroundColor=[UIColor greenColor];
        [button addTarget:self action:@selector(buttonAction) forControlEvents:UIControlEventTouchUpInside];
        [self.view addSubview: button];


    }
    return self;
}
-(void)viewWillAppear:(BOOL)animated
{
    UIBarButtonItem *addButton = [[UIBarButtonItem alloc]initWithTitle:@"Add" 
                                                                 style:UIBarButtonItemStyleBordered 
                                                                target:self 
                                                                action:@selector(addAction)];
    self.navigationItem.rightBarButtonItem = addButton;

}
-(void)buttonAction
{
    printf("Hi i am in buttonAction method");

}

-(void)addAction
{
    printf("Hi i am in addAction method");

}

Я использовал ARC enbled в этом проекте. Когда я касаюсь UIBarButtonItem или UIButton, я получаю ошибку ниже.

TestXcode4 [2470: 207] - [__NSCFString addAction]: нераспознанный селектор отправлено экземпляру 0x6827b00

Пожалуйста, помогите мне выйти из этого.

Ответы [ 2 ]

1 голос
/ 23 ноября 2011

Если вы добавите этот контроллер представления в окно, вы не отпустите этот контроллер после вызова addubview. Потому что окно не будет сохранять этот вид контроллера.

0 голосов
/ 03 декабря 2011

Я просто отключаю ARC в настройках проекта.тогда работает нормально ....

...