titlelabel guidelines color buttons swift uibutton tvos

swift - guidelines - menu ios



Simple tvOS UIButton no funciona (1)

Estoy intentando implementar un UIButton simple (tvOS y Swift), pero el evento TouchDown no se está disparando. (intenté también TouchUpInside).

  • En el simulador puedo ver visualmente que el botón está presionado.

mi código ViewController.swift es:

import UIKit class ViewController: UIViewController { override func viewDidLoad() { super.viewDidLoad() let button = UIButton(type: UIButtonType.System) button.frame = CGRectMake(100, 100, 400, 150) button.backgroundColor = UIColor.greenColor() button.setTitle("Test", forState: UIControlState.Normal) button.addTarget(self, action: "buttonAction:", forControlEvents: UIControlEvents.TouchDown) self.view.addSubview(button) self.view.userInteractionEnabled = true } func buttonAction(sender:UIButton!){ NSLog("Clicked") } }

¿Qué debo hacer para detectar un clic del botón?


No debe utilizar ".TouchDown" o ".TouchUpInside" en TVOS, ya que eso no hace lo que cabría esperar: es probable que desee utilizar "UIControlEvents.PrimaryActionTriggered" en su lugar.

TouchUpInside se desencadena por toques reales, que no es realmente lo que sucede. Si desea que el botón Seleccionar presione en el control remoto para activar su botón, debe usar PrimaryActionTriggered.