Получить имя экземпляра отправителя в target-C - PullRequest
0 голосов
/ 15 октября 2010

Я хочу получить имя отправителя в Objective-C.Например, ниже у меня есть метод, который вызывается экземпляром UISlider в Интерфейсном Разработчике, я хочу знать, каково его имя экземпляра, чтобы позже я мог добавить условные блоки в метод, для которого экземпляр UISlider вызвал метод.

например,

-(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 
}

Ответы [ 2 ]

0 голосов
/ 15 октября 2010

Вы можете использовать свойство тега UIView для идентификации отправителя.

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

    if (sender.tag == 1)
    {
        // do whatever
    }
    else
    {
        // do something else
    }
}
0 голосов
/ 15 октября 2010

Вы можете использовать

.tag member

чтобы прочитать запись и целочисленный идентификатор для ползунка следующим образом:

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

Идентификаторы тегов также могут быть установлены для компонентов в IB.

Если ваш набор для строки, то вам нужно будет создать подкласс UISlider.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...