Sto utilizzando un Toast con una visualizzazione personalizzata. Istanzio la vista e chiamo setView sul toast. Il Toast avrebbe dovuto galleggiare sopra e non ricevere gli eventi di messa a fuoco e tocco, e ha funzionato bene. Dopo che l'app è stata lanciata, gli utenti si sono lamentati del fatto che su alcuni modelli di telefono come il Galaxy Note, il Toast ha ricevuto eventi di tocco e l'app sottostante non lo ha fatto.Android Toast ottiene gli eventi di tocco su alcuni telefoni, e non su altri
Ho stampato i flag dei parametri di layout (WindowManager.LayoutParams) che la vista ottiene nel metodo setLayoutParams. Si scopre che sulla maggior parte dei dispositivi, il valore è 0x000098, ma su alcuni è 0x040088. Sui dispositivi che il Toast riceve gli eventi di tocco, viene rimossa la bandiera FLAG_NOT_TOUCHABLE e viene aggiunta la flag FLAG_WATCH_OUTSIDE_TOUCH. Questo spiega perché il toast ottiene gli eventi di tocco.
Ma cosa causa questa differenza? C'è un modo per forzare il brindisi a non essere tangibile?
Hai trovato una risposta? Inoltre, come hai letto i parametri Toast? – theJosh
"toast.getView(). SetEnabled (false);" lavoro per te? Questo dovrebbe disabilitare gli eventi di tocco sulla vista del toast. – domi
Questa domanda ha 2 anni e improvvisamente è tornata in vita. Non ho un dispositivo per testarlo al momento – yoah