Установите значение ползунка

Я пытаюсь установить значение ползунка после нажатия кнопки, но он не работает – слайдер не перемещается. код работает отлично без ошибок.

Это должно быть довольно просто, но я не могу понять это. xCode Версия 4.5.2

Благодаря!


здесь мой код:

ViewController.h

#import <UIKit/UIKit.h> @interface ViewController : UIViewController @property (weak, nonatomic) IBOutlet UILabel *debugLabel; @property (weak, nonatomic) IBOutlet UISlider *slider; - (IBAction)slider:(id)sender; - (IBAction)ButtonChangeValue:(id)sender; @end 

ViewController.m

 #import "ViewController.h" @interface ViewController () @end @implementation ViewController @synthesize slider; ... - (IBAction)slider:(UISlider *)sender { float value = [sender value]; self.debugLabel.text = [NSString stringWithFormat:@"Value: %f",value]; } - (IBAction)ButtonChangeValue:(id)sender { slider.value = 90; } 

Я думаю, ваша проблема в том, что ползунок принимает значения от 0.0 до 1.0 (значения по умолчанию, изменяйте их с помощью _slider.maximumValue и _slider.minimumValue ). Попробуйте установить значение 0,9 вместо 90 (если вы имеете в виду 90%).

Если слайдер обновляется, но не анимируется, используйте:

 [_slider setValue:0.9 animated:YES]; 

Обратите внимание, что с учетом вашего кода вам может понадобиться использовать self.slider вместо _slider .

попробуйте использовать

  self.slider.value = 90; 

вместо

  slider.value = 90; 

Проверить мой ответ

 - (void)viewDidLoad { UITapGestureRecognizer *gr = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(sliderTapped:)]; [slider addGestureRecognizer:gr]; } - (void)sliderTapped:(UIGestureRecognizer *)g { UISlider* s = (UISlider*)g.view; if (s.highlighted) return; // tap on thumb, let slider deal with it CGPoint pt = [g locationInView: s]; CGFloat percentage = pt.x / s.bounds.size.width; CGFloat delta = percentage * (s.maximumValue - s.minimumValue); CGFloat value = s.minimumValue + delta; [s setValue:value animated:YES]; NSString *str=[NSString stringWithFormat:@"%.f",[self.slider value]]; self.lbl.text=str; } 

Использовать slider.value = 90;

Ваш ViewController.h должен быть:

 #import <UIKit/UIKit.h> @interface ViewController : UIViewController { UISlider *slider; } @property (weak, nonatomic) IBOutlet UILabel *debugLabel; @property (weak, nonatomic) IBOutlet UISlider *slider; - (IBAction)slider:(id)sender; - (IBAction)ButtonChangeValue:(id)sender; @end 

И не забывайте @synthesize slider; в вашем ViewController.m.

В противном случае используйте self.slider.value = 90; или _slider.value = 90;

Поскольку вы используете конструктор интерфейса, первое, на что нужно обратить внимание: это компоненты пользовательского интерфейса (слайдер, кнопка), подключенные к IBOutlets в владельце файла. Это самый распространенный источник таких проблем.

Затем проверьте min и max ползунка (по умолчанию 0; 1 – как упоминалось ранее rdurand).

И spider1983 также верен: поскольку слайдер является свойством, вы можете обращаться к нему как self.slider (или _slider, но в этом случае вы не должны использовать последний).

я думаю . так как вы не указали максимальное и минимальное значение ползунка, оно принимает значения max и min по умолчанию, равные 0: 1. Таким образом, невозможно установить значение = 90. Сначала измените его max и min следующим образом:

 Slider.minimumValue = 1; Slider.maximumValue = 100; 

теперь попробуйте свою вещь,

 Slider.value =90; 
Interesting Posts

Интеграция MGSplitViewController в универсальном приложении

Надежное принуждение фонового приложения прекратить из-за давления памяти

NSDateFormatter не показывает полное имя месяца, только однозначный номер

Быстродействующий массив и производительность словаря, removeAll () vs new instance

Приложение не имеет сетевого подключения

Firebase observEventType не срабатывает после FirebaseSimpleLogin с помощью Facebook?

Изображения в UITableViewCells загружаются неправильно

UISearchController – Предупреждение Попытка загрузить представление контроллера вида

Можем ли мы сделать HTTPS-вызов с самозаверяющим сертификатом и разрешением ATS

почему этот код использует presentModalViewController? (не pushViewController)

Как правильно установить объекты вокруг круга на UIView

Удаление эффекта блеска с кнопок в UINavigationBar

Класс RKUrl не существует в последнем RestKit

Повторное использование ячейки с текстовым полем

Набор Sprite, удалите анимированные текстуры из памяти

Давайте будем гением компьютера.