如何在按下UIButton时打印此变量的值?

时间:2009-06-05 04:33:38

标签: iphone uibutton

// My Button code
UIButton *ticketButtonObj=[[ticketButton alloc]initWithFrame:CGRectMake(0.0f, 115.0f, 500.0f, 40.0f) ;
int col=10;

[ticketButtonObj addTarget:self action:@selector(ShowNumber:)  forControlEvents:UIControlEventTouchUpInside];

[self.window addSubview:ticketButtonObj];
// ...   
- (void) ShowNumber:(id)sender{
    // here i want to get the Value of Col
}

在上面的代码中,当我按下按钮时,我想在ShowNumber方法中打印col变量的值。我怎么能这样做?

3 个答案:

答案 0 :(得分:0)

Col是一个局部变量,因此在方法返回后被销毁。

您需要为您创建一个实例变量才能访问该值。

答案 1 :(得分:0)

不要使用普通的局部变量,我建议不要使用int。使用NSInteger并将其设置为属性:

@interface YourClassName : UIViewController
{
    NSInteger col;
}
@property (nonatomic) NSInteger col;

然后@synthesize变量col并在代码中的任意位置使用它。

答案 2 :(得分:0)

你可以:

UIButton *ticketButtonObj=[[ticketButton alloc]initWithFrame:CGRectMake(0.0f, 115.0f, 500.0f, 40.0f) ;
int col=10;
ticketButtonObj.tag = col;
[ticketButtonObj addTarget:self action:@selector(ShowNumber:)  forControlEvents:UIControlEventTouchUpInside];

[self.window addSubview:ticketButtonObj];

// ... 

- (void) ShowNumber:(id)sender{
NSLog(@"%@", [(UIButton*) sender tag]);}