Sono nuovo di tvOS. Mi piacerebbe avere un pulsante standard che una volta premuto, sposta lo stato attivo su un altro pulsante standard, come posso fare questo (se è possibile ovviamente)?Come spostare lo stato attivo da un pulsante a un altro in tvOS?
5
A
risposta
9
Avviare l'override del preferredFocusedView
nel vostro viewController con una proprietà personalizzata:
var myPreferredFocusedView:UIView?
override var preferredFocusedView: UIView? {
return myPreferredFocusedView:UIView
}
Poi, nel vostro tasto di richiamata, impostare il myPreferredFocusedView
per la vostra prossima pulsante preferito, che dovrebbe ottenere attenzione. Successivamente, richiedere direttamente un aggiornamento di messa a fuoco:
func buttonCallback(){
myPreferredFocusedView = button2 // button2 is an example
/*
Trigger the focus system to re-query the view hierarchy for preferred
focused views.
*/
setNeedsFocusUpdate()
updateFocusIfNeeded()
}
Questo dovrebbe aggiornare il sistema di messa a fuoco al tuo altro pulsante.
0
Un'altra opzione è quella di fare qualcosa di simile alla seguente, quando buttonA (per esempio) è attivo:
buttonB.setNeedsFocusUpdate()
viewController.setNeedsFocusUpdate()
Questo funziona solo se sono allo stesso livello nella gerarchia vista, però. Se no allora probabilmente avete bisogno di catena le chiamate verso setNeedsFocusUpdate
tutta la strada fino alla gerarchia o qualcosa ...
Problemi correlati
- 1. Impostare lo stato attivo su un pulsante
- 2. Come spostare lo stato attivo su un altro "gruppo di schede" in Intellij IDE
- 3. Modifica lo stato attivo da un widget di testo a un altro
- 4. Come posso creare un pulsante con un colore di sfondo per tvOS mentre mostro ancora lo stato attivo?
- 5. Spostare lo stato attivo sul record appena aggiunto in un NSTableView
- 6. Come impedire a un elemento di perdere lo stato attivo?
- 7. tvOS: forza un pulsante per mettere a fuoco
- 8. Sposta lo stato attivo su un campo particolare
- 9. IOS8 come spostare un popover attivo
- 10. Come impostare lo stato attivo su un widget del pulsante a livello di programmazione?
- 11. Come impostare lo stato attivo su un elemento in Elm?
- 12. Imposta lo stato attivo su un componente con Apache Wicket?
- 13. Come trascinare e rilasciare un pulsante da un pannello a un altro pannello?
- 14. stato attivo pulsante css che causa lo spostamento del testo?
- 15. C'è un "ha lo stato attivo" in JavaScript (o jQuery)?
- 16. Come impostare lo stato attivo su un materiale TextField?
- 17. Avvio di un processo senza rubare lo stato attivo (C#)
- 18. WPF: Impossibile impostare lo stato attivo
- 19. Spostare un valore in un altro ambiente
- 20. Come forzare a perdere lo stato attivo di tutti i campi in un modulo in jQuery
- 21. Leggere lo stato "Abilitato" di un pulsante
- 22. Come posso spostare elementi da un elenco a un altro elenco in C#?
- 23. Come spostare la tabella da un tablespace a un altro in oracle 11g
- 24. Come rimuovere lo stato attivo da un controllo TextBox in WinForms?
- 25. Impostare lo stato attivo sull'elemento contented div
- 26. Test se un input ha lo stato attivo
- 27. Summernote: impostare lo stato attivo dopo l'inizializzazione
- 28. Forza lo stato attivo su un elemento con un'eccezione. (jQuery)
- 29. Come impostare lo stato attivo del widget Tkinter?
- 30. Modifica dello stato del pulsante di commutazione da un altro pulsante
Grazie mille Antoine. Funziona benissimo, l'unico problema che ho ora è che quando si abbandona la vista e poi si torna indietro, l'attenzione è persa e ho bisogno di usare i tasti freccia (o trascinare sul telecomando) per ottenere un qualsiasi pulsante per mettere a fuoco. Proverò a studiare di più su questo ... – Cue
Puoi usare lo stesso codice. Assicurati di aver impostato 'preferredFocusedView' e richiedi un aggiornamento di messa a fuoco sulla viewWillAppear – Antoine
Grazie mille! – Cue