Мне нужно сделать большой спиннер (в сером стиле, примерно 80x80px), но он выглядит некачественно. Есть ли способ сделать его качественным или заменить анимированное изображение?
iPad — большой пользовательский интерфейс iPhoneActivityIndicatorView
Ответы (7)
Это невозможно сделать с помощью UIActivityIndicatorView. однако вы можете написать свой собственный подкласс UIView, используя UIImageView и некоторую простую анимацию, чтобы сделать это за вас.
person
Jesse Naugher
schedule
06.08.2010
На самом деле, вы можете установить стиль индикатора вашего UIActivityIndicatorView
на Большой белый, а затем в коде сделать это:
// Objective-C
[myActivityView setColor:[UIColor grayColor]];
// Swift 4.0
myActivityView.color = .grayColor
person
user698789
schedule
26.10.2011
хм попробовал это, но у меня это не сработало: причина: '-[UIActivityIndicatorView setColor:]: нераспознанный селектор отправлен в экземпляр 0xa6287d0'
- person Mark; 14.11.2011
Добавьте этот тест: if ([myActivityView responsesToSelector:@selector(setColor:)]) { }
- person user698789; 16.11.2011
Это лучший ответ. Работает легко.
- person Nick Turner; 21.01.2013
Большое спасибо .. Работает как шарм! :)
- person valbu17; 08.01.2015
отлично! Можно подтвердить работу в Swift на iOS 8: myActivityView.color = UIColor.redColor()
- person Max MacLeod; 23.01.2015
Решение Swift 2.0
myActivityView.activityIndicatorViewStyle = UIActivityIndicatorViewStyle.WhiteLarge
myActivityView.color = UIColor.grayColor()
person
Chadmart
schedule
10.04.2016
Свифт 3
extension UIActivityIndicatorView {
func makeLargeGray() {
activityIndicatorViewStyle = .whiteLarge
color = .gray
}
}
person
Dmitry Isaev
schedule
04.04.2017
Вы можете попробовать что-то вроде:
activityIndicator.transform = CGAffineTransform(scaleX: 1.3, y: 1.3)
Однако, если вы сделаете его достаточно большим, вы сможете увидеть пиксели...
person
inigo333
schedule
26.01.2018
Свифт 4.2
extension UIActivityIndicatorView {
func makeLargeGray() {
style = .whiteLarge
color = .gray
}
}
person
kauai
schedule
23.09.2018
Полезным проектом, с которого вы можете начать, является MBProgressHUD.
person
appsmatics
schedule
22.03.2012