CERCA
PER MODELLO
FullScreen Chatbox! :)

Utente del giorno: 4eyes81 con ben 2 Thanks ricevuti nelle ultime 24 ore
Utente della settimana: elmegio con ben 7 Thanks ricevuti negli ultimi sette giorni
Utente del mese: bluemask con ben 43 Thanks ricevuti nell'ultimo mese

Visualizzazione dei risultati da 1 a 4 su 4
Discussione:

Stoppare Suono con secondo click

Se questa discussione ti è stata utile, ti preghiamo di lasciare un messaggio di feedback in modo che possa essere preziosa in futuro anche per altri utenti come te!
  1. #1
    Androidiano L'avatar di gigyrock


    Registrato dal
    Jul 2012
    Messaggi
    78

    Ringraziamenti
    5
    Ringraziato 1 volta in 1 Post
    Predefinito

    Stoppare Suono con secondo click

    Salve ragazzi, finalmente anche io mi sono buttato nel mondo della programmazione android, per semplificarmi il processo di apprendimento, non avendo mai studiato Java, ho deciso di usare App inventor e la sua programmazione grafica a blocchi.
    Molto comoda devo dire, ma non so ancora bene come usarla... vi spiego, sto sviluppando un app che riproduce dei suoni al click dei corrispettivi bottoni... ma vorrei anche che si potesse stoppare il suono cliccando di nuovo sul corrispettivo bottone, come dovrei sistemare il tutto? Vi faccio vedere come è composta attualmente
    in questo modo, cliccando su button4 viene eseguito suond4, lo stesso per sound7... ma se prima che il suono finisca di essere riprodotto volessi stopparlo?

    Immagini allegate
    Ultima modifica di gigyrock; 08-09-12 alle 20:41

  2.  
  3. #2
    Baby Droid


    Registrato dal
    Sep 2012
    Messaggi
    41

    Ringraziamenti
    3
    Ringraziato 3 volte in 3 Posts
    Predefinito

    posso vedere un po' di codice?

  4. #3
    Androidiano L'avatar di gigyrock


    Registrato dal
    Jul 2012
    Messaggi
    78

    Ringraziamenti
    5
    Ringraziato 1 volta in 1 Post
    Predefinito

    guarda ho risolto così non so se è giusto, penso di si...
    dd.jpg
    Ma c'è un problema che non so proprio come risolvere, cioè se guardate bene l'algoritmo... tutto è teoricamente esatto ma, praticamente no!
    Per il semplice motivo che se un suono viene avviato (play) e non stoppato quindi si aspetta che termini da solo... la variabilestop rimane su true di conseguenza al prossimo bottone cliccato il corrispettivo suono non viene avviato perchè viene avviata la procedurastop ihih... sistemiamo un problema (poter stoppare un suono prima che termini da solo) ma ne creiamo un altro!!!
    Come risolvere? Idee? esiste una procedura che verifichi se il suono è terminato o è in esecuzione? se esiste risolvo tutto facendo partire la procedurastop solo se il risultato di questa procedura è che il suono è ancora in esecuzione!!!

    nell'attesa di una risposta, ho risolto così ed al momento sembra funzionare.
    dd.jpg

    Vi spiego, ho assegnato il valore true alla variabilestop prima di sound.play, in questo modo ho pensato... prima la variabile diventa true poi viene eseguito il suono e una volta terminata la procedura diventa di nuovo falsa, ma se la procedura non è terminata e quindi il suono è ancora in esecuzione la variabile è true. Di conseguenza cliccando sul bottone viene stoppata.

    questo presuppone però che l'azione sound.play termini quando finisce di essere eseguito il suono.... e non serva solo ad avviarlo... non so se è così.
    Evidentemente per funzionare deve essere così!
    Ultima modifica di gigyrock; 10-09-12 alle 15:05

  5. #4
    Androidiano L'avatar di gigyrock


    Registrato dal
    Jul 2012
    Messaggi
    78

    Ringraziamenti
    5
    Ringraziato 1 volta in 1 Post
    Predefinito

    Ragazzi alla fine ho risolto così
    Senza titolo-1.jpg

    Ma c'è un problema che non riesco ad eludere, spero mi possiate aiutare in modo da poter completare finalmente la mia app!!
    Praticamente il tutto funziona, la procedura è strutturata bene e anche l'if ma... il problema è che, se il bottone viene premuto solo una volta e quindi non viene stoppato il suono, per eseguire un altro suono anzicchè fare click bisogna fare doppio click perchè la variebile stop è ancora vera, e bisogna farla diventare falsa.

    al contempo se la faccio diventare falsa io non ha senso perchè non è possibile stoppare il suono...

    non c'è un azione, metodo o non so cosa che mi permetta di verificare se il suono è ancora in esecuzione? in modo da poter scegliere se stoppare il suono o eseguirlo?

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire risposte
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Torna su
Privacy Policy