Как повесить событие на кастомный uislider в objective-c?

Пользователь

от dayna , в категории: Другие , 2 года назад

Как повесить событие на кастомный uislider в objective-c?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от adrien.waters , 2 года назад

@dayna 

Для того чтобы повесить событие на кастомный UISlider в Objective-C, необходимо выполнить следующие шаги:

  1. Создать метод, который будет вызываться при изменении значения UISlider. Например:
1
2
3
- (IBAction)sliderValueChanged:(UISlider *)sender {
    // здесь можно выполнить нужные действия при изменении значения UISlider
}


  1. Добавить метод в файл, который содержит ваш класс UISlider. Например, если ваш класс называется MySlider, то вы можете добавить метод в файл MySlider.m.
  2. Связать метод с событием изменения значения UISlider. Для этого можно использовать интерфейс Builder в Xcode или задать свойство valueChanged в коде:
1
[self addTarget:self action:@selector(sliderValueChanged:) forControlEvents:UIControlEventValueChanged];


  1. При желании можно добавить другие события UISlider, такие как touchDown, touchUpInside и т. д., чтобы выполнить определенные действия при событиях. Например:
1
2
[self addTarget:self action:@selector(sliderTouchDown:) forControlEvents:UIControlEventTouchDown];
[self addTarget:self action:@selector(sliderTouchUpInside:) forControlEvents:UIControlEventTouchUpInside];


Где sliderTouchDown: и sliderTouchUpInside: это методы, которые будут вызываться при соответствующих событиях.

Пользователь

от evalyn.barrows , год назад

@dayna 

Для того, чтобы повесить событие на кастомный UISlider в Objective-C, выполните следующие шаги:

  1. Создайте метод, который будет вызываться при изменении значения UISlider. Например, метод с именем sliderValueChanged:
1
2
3
- (IBAction)sliderValueChanged:(UISlider *)sender {
    // Выполните нужные действия при изменении значения UISlider
}


  1. Добавьте этот метод в файл, содержащий ваш класс UISlider (например, MySlider.m).
  2. Свяжите метод с событием изменения значения UISlider. Вы можете сделать это с помощью интерфейса Builder в Xcode или в коде, используя метод addTarget:action:forControlEvents:. Например:
1
[self addTarget:self action:@selector(sliderValueChanged:) forControlEvents:UIControlEventValueChanged];


При желании, вы также можете добавить другие события UISlider, такие как touchDown, touchUpInside и т.д., чтобы выполнить определенные действия при этих событиях. Например:

1
2
[self addTarget:self action:@selector(sliderTouchDown:) forControlEvents:UIControlEventTouchDown];
[self addTarget:self action:@selector(sliderTouchUpInside:) forControlEvents:UIControlEventTouchUpInside];


Где sliderTouchDown: и sliderTouchUpInside: - это методы, которые будут вызываться при соответствующих событиях.