2010-12-18 1 views
1

в одном из представлений моего приложения, которое является подклассом класса UIView, у меня есть кнопка на панели инструментов (self.navigationController.toolBar). После нажатия UIActionSheet появляется «delete» & «cancel».Использование или Доступ к переменной класса из методов UIActionSheetDelegate

myView.h

NSString *classVariable; 
.... 
@property (nonatomic, retain) NSString *classVariable; 

myView.m

@synthesize classVariable,...; 
-(void) viewDidLoad { 
    ... 
    classVariable = [[NSString alloc] initWithString:@"blah"]; 
} 
-(void)actionSheet:(UIActionSheet *)actionSheet clickedButtonAtIndex:(NSInteger)buttonIndex { 
    if (buttonIndex == 0) { 
    ... 
    NSLog(classVariable);//BUG HERE!! just cannot printout and app gets sudden death. 
    } 
} 
-(void)dealloc{ 
    ... 
    [classVariable release]; 
} 

Я не знаю, почему я не могу получить доступ к переменной из метода UIActionSheetDelegate. Я уже объявил переменную и дал значение.

Благодаря

ответ

1

Вы пробовали:

-(void) viewDidLoad { 
    ... 
    classVariable = [[NSString alloc] initWithString:@"blah"]; 
} 
+0

хороший момент. нет, я не. но переменная String доступна из других обычных методов. Другими словами, я могу использовать NSLog из других методов, кроме методов делегатов UIActionSheet. это моя проблема. – bicbac

+0

Я распределил его, но все еще не работал. – bicbac

+0

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

Смежные вопросы