1
// 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 変数の値を出力したいと考えています。これどうやってするの?

4

3 に答える 3

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]);}
于 2013-01-30T15:38:04.843 に答える
0

通常のローカル変数は使用しないでください。int は使用しないことをお勧めします。を使用しNSIntegerてプロパティとして設定します。

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

次に@synthesize、変数colをコード内の好きな場所で使用します。

于 2012-01-17T18:08:22.850 に答える
0

Col はローカル変数であるため、メソッドが返された後に破棄されます。

値にアクセスできるようにするには、インスタンス変数を作成する必要があります。

于 2009-06-05T04:41:15.407 に答える