Configuré imágenes para los estados de los botones Normal, Destacado y Seleccionado, pero cuando presioné el botón en el estado seleccionado y lo presioné / resalté, no vi mi imagen resaltada sino solo una imagen en gris. ¿Es posible establecer una imagen para el estado resaltado cuando se selecciona el botón?
mi código:
[button setImage:[UIImage imageNamed:@"normal.png"] forState:UIControlStateNormal];
[button setImage:[UIImage imageNamed:@"pressed.png"] forState:UIControlStateHighlighted];
[button setImage:[UIImage imageNamed:@"checked.png"] forState:UIControlStateSelected];
Cuando lo hago:
[button setSelected:YES];
y presiona el botón, la imagen "press.png" no selecciona.
button.adjustsImageWhenHighlighted = NO;
primero.Respuestas:
Encontré la solución: necesito agregar una línea de suma
fuente
Puede hacer esto en Interface Builder.
Seleccione el
UIButton
que desea configurar yIB
luego vaya aattributes inspector
.En las capturas de pantalla, estoy usando un tipo de botón personalizado, pero eso no importa.
fuente
Swift 3
Para establecer la imagen de fondo podemos usar
setBackgroundImage(_:for:)
Swift 2.x
fuente
setImage
)Creo que la mayoría de los carteles aquí pierden el punto por completo. Yo tuve el mismo problema. La pregunta original era sobre el estado resaltado de un botón Seleccionado (COMBINAR AMBOS ESTADOS) que no se puede establecer en IB y vuelve al estado Predeterminado con algo de oscurecimiento. Solo solución de trabajo como una publicación mencionada:
fuente
Si tiene una buena razón para hacerlo, esto será suficiente.
agregue estos objetivos:
fuente
En Swift 3.x, puede configurar la imagen resaltada cuando se selecciona el botón de la siguiente manera:
fuente
En swift puedes hacer:
fuente
Corrígeme si estoy equivocado. Haciendo
Está cambiando claramente el estado de los botones seleccionados. Entonces, naturalmente, por el código que ha proporcionado, la imagen será la del estado seleccionado en su caso.
fuente
Si alguien se pregunta cómo funciona esto en Swift, aquí está mi solución:
fuente
Swift 3+
O
Significa que el botón actual en
selected
estado, luego lo toca, muestra elhighlight
estado.fuente
Tuve problemas para configurar
imageView.highlighted = NO;
(configurar YES funcionó correctamente y la imagen cambió a la resaltada).La solución estaba llamando
[imageView setHighlighted:NO];
Todo funcionó correctamente.
fuente
Desde donde quieres llamar
El método:
Crédito a Jorge, pero lo mejoré un poco dando la solución de trabajo completa
fuente
Xamarin C #
Hacer bit a bit O no funciona por alguna razón
Los siguientes trabajos
fuente
Si necesita el tono resaltado que el sistema operativo proporciona de manera predeterminada cuando toca y mantiene presionado un botón personalizado para el estado seleccionado también, use esta subclase de UIButton. Escrito en Swift 5:
fuente