¿Cómo puedo desactivar un UIButton?

Estoy trabajando en un proyecto en el que tengo que mostrar todas las fotos de la Biblioteca de Fotos en un plist y mostrar horizontalmente en UIButtons.

Mi app también tiene un botón de editar: cuando el usuario hace clic en este botón, una marca de eliminación (como suele aparecer en otro iPhone/iPad apps) debe mostrar en cada botón.

Pero aquí está el crucial poco: tan pronto como eliminar aparezca la marca, la funcionalidad del botón debe estar deshabilitada. He tratado de lograr esto con lo siguiente:

{
  editbutton.enabled=NO;
}

…pero ni produce un error ni trabaja. ¿Qué debo hacer?

  • Mostrar el bloque de código donde se deshabilita
InformationsquelleAutor Rahul | 2011-06-02

6 Kommentare

  1. 104

    Por favor, establezca este…

     editButton.userInteractionEnabled = NO; 

    o puede utilizar

     editButton.enabled = NO;
    • Usted no debería tener que usar esto, setEnabled:NO sería la forma adecuada de lo que sería la actualización de la interfaz de usuario.
    • ¿cuál es la diferencia entre ‘isEnabled’ y ‘habilitado’
    • isEnabled es sintetizada getter para la propiedad enabled.
    • habilitado se ha cambiado el nombre a isEnabled en Swift 3 de iOS 10
    • En iOS 10 Swift 3, isEnabled es la única cosa presente. setEnabled está en ninguna parte ser encontrado.
  2. 7

    Utilizar el enabled propiedad de UIControl que la super clase de UIButton y la puso con NO.

    myButton.enabled = NO;

    También se podría tratar como @Marvin sugerido,
    En caso de que el botón no responde a ningún evento táctil de usuario,

    • Se trata de habilitado , no permitir.. Verificar antes de publicar respuestas..
    • Gracias ..
  3. 6

    setter de la propiedad habilitado se reemplaza en la clase UIButton. trate de enviar un mensaje.

     [editbutton setEnabled:NO];
  4. 4

    Swift 3 y por encima

    editButton.isEnabled = false

    setEnabled ahora es parte del método setter para isEnabled.

  5. 1

    Además de lo anterior:

    Conjunto
    editButton.userInteractionEnabled = NO;
    o usted puede utilizar
    editButton.enabled = NO;

    Usted podría querer gris el botón para que el usuario sabe que se ha deshabilitado:
    editButton.alpha = 0.66

Kommentieren Sie den Artikel

Bitte geben Sie Ihren Kommentar ein!
Bitte geben Sie hier Ihren Namen ein

Pruebas en línea