Independientemente del tamaño que le dé durante la asignación, solo muestra un tamaño fijo. ¿Es posible aumentarlo?
Código:
activityIndicator = [[UIActivityIndicatorView alloc] initWithFrame:
CGRectMake(142.00, 212.00, 80.0, 80.0)];
[[self view] addSubview:activityIndicator];
[activityIndicator sizeToFit];
activityIndicator.autoresizingMask = (UIViewAutoresizingFlexibleLeftMargin |
UIViewAutoresizingFlexibleRightMargin |
UIViewAutoresizingFlexibleTopMargin |
UIViewAutoresizingFlexibleBottomMargin);
activityIndicator.hidesWhenStopped = YES;
activityIndicator.activityIndicatorViewStyle = UIActivityIndicatorViewStyleWhiteLarge;
ios
iphone
swift
uiactivityindicatorview
glotón
fuente
fuente
Respuestas:
El tamaño lo fija el estilo. Es un elemento de interfaz estandarizado, por lo que a la API no le gusta jugar con él.
Sin embargo, probablemente puedas hacer una transformación de escala en él. Sin embargo, no estoy seguro de cómo eso lo afectaría visualmente.
Solo desde la perspectiva del diseño de la interfaz de usuario, generalmente es mejor dejar estos elementos estandarizados comunes en paz. Se le ha enseñado al usuario que ciertos elementos aparecen en un tamaño determinado y que significan cosas específicas. Alterar la apariencia estándar altera la gramática de la interfaz y confunde al usuario.
fuente
UIActivityIndicatorViewStyleWhiteLarge
, sino del tamaño pequeño, ¿verdad? Porque creo que estaLarge
versión tiene un buen tamaño incluso en una pantalla vacía..whiteLarge
¡lo hace! ¡Gracias! También configuroUIActivityIndicatorView(frame: CGRect(x: 0, y: 0, width: 100, height: 100))
yactivityIndicator.backgroundColor = UIColor(red: 255/255, green: 255/255, blue: 255/255, alpha: 0.38)
. En pantallas 6 + / 7 +, la predeterminada es demasiado pequeñaLo siguiente creará un indicador de actividad de 15px de ancho:
Si bien entiendo el sentimiento de la respuesta de TechZen, no creo que ajustar el tamaño de un UIActivityIndicator en una cantidad relativamente pequeña sea realmente una violación de los modismos de la interfaz estandarizada de Apple: si un indicador de actividad es 20px o 15px no cambiará la interpretación de un usuario de lo que está pasando.
fuente
Swift 3.0 y Swift 4.0
fuente
Es posible cambiar el tamaño de UIActivityIndicator.
El tamaño del original es 1.0f. Ahora aumenta y reduce el tamaño en consecuencia.
fuente
let transform = CGAffineTransformMakeScale(1.5, 1.5)
activityIndicator.transform = transform
Swift3
fuente
Aquí hay una extensión que funcionaría con Swift 3.0 y verifica para evitar el escalado 0 (o cualquier valor que desee prohibir):
Llámelo así para escalar a 40 pts (2x):
fuente
También hay muchos otros trucos útiles de "CGAffineTransform" con los que puedes jugar. Para obtener más detalles, consulte la referencia de la biblioteca de desarrolladores de Apple:
http://developer.apple.com/library/mac/#documentation/GraphicsImaging/Reference/CGAffineTransform/Reference/reference.html
¡Buena suerte!
fuente
Lo mejor que puedes hacer es usar el
whiteLarge
estilo.let i = UIActivityIndicatorView(activityIndicatorStyle: UIActivityIndicatorViewStyle.whiteLarge)
.Aumentar el tamaño de
UIActivityIndicatorView
no cambia el tamaño del indicador propiamente dicho, como puede ver en estas imágenes.fuente
activityIndicator.transform = CGAffineTransform (scaleX: 1.75, y: 1.75);
Esto me funcionó para transformar el tamaño del indicador.
fuente