por inicio home flotante desactivar control como boton assistive activar ios swift button hidden

ios - inicio - como desactivar el boton home del iphone



cómo ocultar/mostrar un botón en forma rápida (4)

Intento tener una declaración if que oculte un botón cuando una etiqueta muestra un cierto estado, y aparece cuando la etiqueta dice algo más. El nombre de la etiqueta es Estado, y cuando muestra "Closed" , lo quiero ocultar, y cuando aparece "Open" , aparecerá.

var query3 = PFQuery(className:"Status_of_game") query3.findObjectsInBackgroundWithBlock{ (namelist3: [AnyObject]!, error : NSError!) -> Void in for list3 in namelist3 { var output = list3["StatusType"] as String self.Status.text = output println(output) if self.Status.text == "Closed" { Purchase().enable = false } } }



El código de muestra para ocultar un botón en Swift:

import UIKit class ViewController: UIViewController { // Create outlet for both the button @IBOutlet weak var button1: UIButton! @IBOutlet weak var button2: UIButton! override func viewDidLoad() { super.viewDidLoad() //Set button2 hidden at start button2.hidden = true } //Here is the action when you press button1 which is visible @IBAction func button1(sender: AnyObject) { //Make button2 Visible button2.hidden = false } }

Y

Debe hacer que el UIButton sea una propiedad de la clase si desea mantener una referencia al mismo. Luego puede acceder usando self.takePhotoButton.


SHIWFT 3

Creé un IBOutlet: loadingBDLogo

Mostrar:

loadingBDLogo.isHidden = falso

Esconder:

self.loadingBDLogo.isHidden = true


Como dice @LAmasse, quieres usar button.hidden = true . button.hidden se renombró a button.isHidden en Swift 3

El código que publicaste no tiene sentido.

if self.Status.text == "Closed" { Purchase().enable = false }

Que es Compra? Del nombre en mayúscula, parece ser una clase. Si es así, es probable que la expresión Purchase() cree una nueva instancia de la clase de Purchase , lo que no tiene sentido. ¿Por qué estás haciendo una llamada a función? Si eso está creando un nuevo objeto de Purchase entonces ese código no tiene sentido. (Usted crearía un nuevo objeto dentro de la declaración if que se descartaría en la siguiente línea ya que no mantiene una referencia fuerte).

Desea configurar un IBOutlet para su botón y conectarlo en Interface Builder.

La declaración podría verse así:

Class MyViewController: UIViewController { @IBOutlet weak var theButton: UIButton! //The rest of your view controller''s code goes here }

Si la salida está conectada a su botón, debe haber un círculo relleno a la izquierda de la línea de código. Se parece a esto:

Y luego su código para mostrar / ocultar el botón podría verse así:

func showQueryResults { var query3 = PFQuery(className:"Status_of_game") query3.findObjectsInBackgroundWithBlock() { (namelist3: [AnyObject]!, error : NSError!) -> Void in for list3 in namelist3 { var output = list3["StatusType"] as String self.Status.text = output println(output) if output == "Closed" { theButton.isHidden = false //changed to isHidden for Swift 3 } } } }

No me queda claro por qué enlazarías todos los resultados de tu consulta y mostrarías el botón si el "Tipo de estado" de cualquiera de los resultados es == "Cerrado".

Finalmente, no estoy muy familiarizado con el análisis sintáctico. Si no se llama al bloque de finalización para el método findObjectsInBackgroundWithBlock en el hilo principal, tendrá que cambiar ese código para realizar las actualizaciones de UI en el hilo principal.

EDITAR:

Desde entonces, aprendí que Parse ejecuta sus controladores de finalización en el hilo principal, por lo que no tiene que preocuparse por las llamadas de IU de los controladores de finalización de Parse.