Я хочу поставить UISlider
по вертикали. Я понятия не имею об этом, поэтому, пожалуйста, помогите мне в этом.как поставить UISlider вертикально?
ответ
Вы должны сделать это программно. Предполагая, что ваш UISlider привязан к переменной с именем slider
, добавьте этот код в методе viewDidLoad в ViewController.m:
- (void)viewDidLoad {
[super viewDidLoad];
CGAffineTransform trans = CGAffineTransformMakeRotation(M_PI * 0.5);
slider.transform = trans;
}
Позвольте мне знать, если вам нужна дополнительная помощь по этому вопросу ..
Это помещает endValue в верхнюю часть. Используйте M_PI * -0.5, чтобы поместить конец минимума в нижней части. –
Полезное примечание. Это самый распространенный сценарий. Спасибо, chrispix. – ravinsp
Вы также можете использовать -M_PI_2 –
По Xcode 4.2, вы можете вид сделать то же самое в Interface Builder.
- Создать ползунок
- Покажите «Удостоверение инспектора»
- Добавить «User Defined время выполнения Атрибут»
- Установите ключ путь к «layer.transform.rotation.z», типа, как
«String» («Номер»не допускает значений с плавающей запятой)(возможно с Xcode 5) и значение «-1.570795» (-π/2).
К сожалению, он по-прежнему будет отображаться как горизонтальный в Interface Builder.
Но вы можете позиционировать центр и не создавать собственный класс, поэтому в некоторых случаях он может быть достаточно полезен. Эффект такой же, как и код ravinsp.
На самом деле вы можете поместить float в Number с запятой (вместо точки). – user500
Гораздо чище, чем принятый, основанный на кодах ответ, ИМХО. – user1021430
В случае, если работа с авто раскладок:
В вашем viewDidLoad, попробуйте:
UIView *superView = self.sizeSlider.superview;
[self.sizeSlider removeFromSuperview];
[self.sizeSlider removeConstraints:self.view.constraints];
self.sizeSlider.translatesAutoresizingMaskIntoConstraints = YES;
self.sizeSlider.transform = CGAffineTransformMakeRotation(M_PI_2);
[superView addSubview:self.sizeSlider];
Он не работает с ограничениями, поэтому хитрость заключается в том, чтобы удалить ограничения для uislider. Возможно, вам придется изменить его размер вручную, установив его свойство рамки.
Swift 3:
slider.transform = slider.transform.rotated(by: CGFloat(0.5 * Float.pi))
// Использование 1,5 инвертировать тени ползунка, если вы хотите
- 1. Как вставить UISlider в UITabBar?
- 2. Как создать пользовательский UISlider
- 3. Как настроить UISlider?
- 4. Как скрыть дорожку UISlider?
- 5. UISlider как Apple Music
- 6. Как отключить UISlider Swift
- 7. Как настроить высоту UISlider
- 8. Как вертикально центрировать div?
- 9. iPhone UISlider to NSNumber
- 10. Как запустить UIControlEventValueChanged UISlider без касания UISlider в iOS?
- 11. Вертикальные ограничения UISlider
- 12. Пользовательские UISlider
- 13. можно ли autolayout ширину UISlider
- 14. Clickable UISlider
- 15. Как перемещать UITableView вертикально
- 16. События UISlider
- 17. UISlider setMaximumTrackTintColor
- 18. Логарифмический UISlider
- 19. UISlider increments
- 20. Настройка UISlider
- 21. Анимация UISlider
- 22. Как центр-вертикально уложенное UILabels вертикально
- 23. UISlider с тегом как позвонить?
- 24. Пользовательский UISlider как музыкальное приложение
- 25. Как добавить наблюдателя на UISlider
- 26. Xcode UITesting - как переместить UISlider?
- 27. Как сделать «дорожку» UISlider невидимым?
- 28. Как центрировать UISlider в UIView?
- 29. Как ng-повторить ярлыки uiSlider?
- 30. Как получить указательную область uislider?
это дубликат этого вопроса спросил вчера: http://stackoverflow.com/questions/ 2369926/how-can-i-make-a-vertical-uislider –