2010-10-15 73 views
0

我想在Objective-C中获取发件人的名称。例如,下面我有一个在Interface Builder中由UISlider的实例调用的方法,我想知道它的实例名称是什么,所以我可以稍后向UISlider的实例称为方法的方法添加条件块。在Objective-C中获取发件人的实例名称-C

例如

-(IBAction)sliderChanged:(UISlider *)sender { 
    //labAt1TimeRequired.text = [NSString stringWithFormat:@"%.1f", [sender value]]; 

    NSLog(@"%@",sender); 

Outputs:2010-10-15 22:46:02.257 EPC[3225:207] <UISlider: 0x495b140; frame = (205 3; 118 23); opaque = NO; autoresize = RM+BM; layer = <CALayer: 0x492e340>> 

我希望能够说

if(sender==myInstanceName) { 
//do this 
} 

回答

0

你可以使用

.TAG成员

阅读像滑块的写入和整数ID这个:

-(IBAction)sliderChanged:(UISlider 
*)sender { 
    switch (sender.tag) { 
    case 0: 
     //SLider 0 
     break; 
     case 1: 
     //SLider 1 
     break; 
     default: 
     break; 
    } 
    } 

也可以为IB中的组件设置标签ID。

如果你的上一个字符串集,那么你就需要继承一个UISlider。

0

你会使用的UIView标签属性识别发件人。

-(IBAction)sliderChanged:(UISlider *)sender { 
//labAt1TimeRequired.text = [NSString stringWithFormat:@"%.1f", [sender value]]; 

    if (sender.tag == 1) 
    { 
     // do whatever 
    } 
    else 
    { 
     // do something else 
    } 
}