CERCA
PER MODELLO
FullScreen Chatbox! :)

Utente del giorno: megthebest con ben 1 Thanks ricevuti nelle ultime 24 ore
Utente della settimana: gianpassa con ben 8 Thanks ricevuti negli ultimi sette giorni
Utente del mese: 9mm con ben 33 Thanks ricevuti nell'ultimo mese

Pagina 3 di 4 primaprima 1234 ultimoultimo
Ultima pagina
Visualizzazione dei risultati da 21 a 30 su 34
Discussione:

creare clipdrawable su un'imageview per barra progresso

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. #21
    Senior Droid L'avatar di Cymon


    Registrato dal
    Jul 2010
    Messaggi
    419

    Ringraziamenti
    7
    Ringraziato 43 volte in 42 Posts
    Predefinito

    Mh, noto comunque che la documentazione android sull'argomento è ambigua

    All'inizio del paragrafo parla del nodo XML <clip> che dovrebbe servire a strutturare il file di controllo del ClipDrawable, ma poi, quando scrive l'esempio, usa un XML fatto con <shape>
    Io in verità ho provato entrambe le soluzioni con medesimo risultato quindi a pare questo non sono riuscito a capire dove sta il problema, ma rimane un testo abbastanza impreciso.
    Nessuno aveva notato l'anomalia prima?
    O magari è riuscito almeno a implementare sto coso correttamente?
    La mia katana: Slackware 13.1
    La mia wakizashi: Acer A1 Liquid con Android 2.1 Eclair
    Il mio sito: Follow the rabbit (con la sua App )

  2.  
  3. #22
    Senior Droid L'avatar di Cymon


    Registrato dal
    Jul 2010
    Messaggi
    419

    Ringraziamenti
    7
    Ringraziato 43 volte in 42 Posts
    Predefinito

    Ogni cosa è illuminata

    A mio parere comunque il paragrafo relativo su android devel è stato scritto da un programmatore in debito di sonno o non adeguatamente rivisto con il procedere delle API.
    Dunque, innanzitutto il clip.xml deve essere, appunto, un xml relativo a clip, ergo fatto così:



    In realtà magari funziona anche con shape, valutando la possibilità che sia retrocompatibile con qualcosa di antico, ma personalmente non l'ho provato e preferisco attenermi alla parte di documentazione che mi sembra più coerente.

    Ovviamente da documentazione si può recuperare altri parametri da modificare.

    Per quello che riguarda il JAVA il metodo getDrawable non funziona, quello che serve è un getBackground() (che oltretutto è compatibile con il parametro impostato in XML...)



    A questo punto tutto funziona, sebbene incrementando il livello di 1000, almeno con l'immagine che ho usato io, non si vedeva comunque nulla. Se però hai un sample piuttosto grosso dovresti riuscire a vedere subito gli effetti... Altrimenti incrementa un po' il livello per vedere una fetta più generosa.

    La mia katana: Slackware 13.1
    La mia wakizashi: Acer A1 Liquid con Android 2.1 Eclair
    Il mio sito: Follow the rabbit (con la sua App )

  4. Il seguente Utente ha ringraziato Cymon per il post:

    al3x88 (04-08-10)

  5. #23
    Androidiano


    Registrato dal
    Dec 2009
    Messaggi
    70

    Ringraziamenti
    12
    Ringraziato 2 volte in 2 Posts
    Predefinito

    ciao , stasera quando ho tempo ... provo anchio a modificare come hai spiegato ... a dir la verità anchio mi stavo chiedendo il fattore diversità tra l'esempo e syntax: (pensavo che fosse indifferente l'uso di uno e l'altro )
    invece non è così o almeno come dici usando shape potrebbe rende compatibile l'app con versione + vecchie ... poi
    codice:
    Per quello che riguarda il JAVA il metodo getDrawable non funziona, quello che serve è un getBackground() (che oltretutto è compatibile con il parametro impostato in XML...) A questo punto tutto funziona...
    a questo punto mi sto chiedendo (stasera che avro + tempo guardo meglio il sito developerandroid) non c'e modo di contattare per segnalare i problemi provando l'esempio e la soluzione trovata ? ciao e grazie mille ancora per l'aiuto Cymon.

  6. #24
    Androidiano


    Registrato dal
    Dec 2009
    Messaggi
    70

    Ringraziamenti
    12
    Ringraziato 2 volte in 2 Posts
    Predefinito

    ciao , appena ricompilato e mandato nell'sdk in eseguzione , funziona alla perfezione ... il valore 1000 era già sufficiente nel mio caso man mano che aumento la porzione di immagine visualizzata aumenta , ora per far si come esempio dopo ogni click aumenti la porzione devo aggiungere un bottone e quindi un OnClickListener... (se sbaglio correggimi )... devo andare ... stasera verso le 22:00 +o- guardo l'esempio precedente (quello che modificava il clipdrawable direttamente sul pulsante (ad ogni clic appariva il pulsante piano piano )e lo cerco di modificare per rendere compatibile il codice con quest'ultimo . ciao

  7. #25
    Androidiano


    Registrato dal
    Dec 2009
    Messaggi
    70

    Ringraziamenti
    12
    Ringraziato 2 volte in 2 Posts
    Predefinito

    eccomi dinuovo qui ... questa sera ho provato a modificare il codice per renderlo compatibile ma non funziona (o almeno sbaglio qualcosa io ) percaso hai suggerimenti ? per implementare ad un pulsante il setonclick ? cioè clicccando sul pulsante mi aumenta il valore del clipdrawable di 1000 in 1000 fino ad arrivare al caricamento dell'immagine completa circa 15000 . ciao

  8. #26
    Senior Droid L'avatar di Cymon


    Registrato dal
    Jul 2010
    Messaggi
    419

    Ringraziamenti
    7
    Ringraziato 43 volte in 42 Posts
    Predefinito

    Quote Originariamente inviato da al3x88 Visualizza il messaggio
    eccomi dinuovo qui ... questa sera ho provato a modificare il codice per renderlo compatibile ma non funziona (o almeno sbaglio qualcosa io ) percaso hai suggerimenti ? per implementare ad un pulsante il setonclick ? cioè clicccando sul pulsante mi aumenta il valore del clipdrawable di 1000 in 1000 fino ad arrivare al caricamento dell'immagine completa circa 15000 . ciao
    Ehm... a solito mancano gli indizi per scoprire il crimine...
    Hai appiccicato il listener al bottone? Il software parte e non succede nulla o schioppa da qualche parte?
    La mia katana: Slackware 13.1
    La mia wakizashi: Acer A1 Liquid con Android 2.1 Eclair
    Il mio sito: Follow the rabbit (con la sua App )

  9. #27
    Androidiano


    Registrato dal
    Dec 2009
    Messaggi
    70

    Ringraziamenti
    12
    Ringraziato 2 volte in 2 Posts
    Predefinito

    Ehm... a solito mancano gli indizi per scoprire il crimine...
    già (mi piace creare suspance prima di rilevare il codice scritto .

    nel codice main.xml ho inserito semplicemente un pulsante

    nel file r.java viene riportato correttamente l'id del pulsante
    codice:
        public static final class id {
            public static final int clipButton=0x7f050000;
            public static final int image=0x7f050001;
    infine nel file clitTestActivity.java


    l'errore che mi viene fuori è il seguente
    The local variable drawable is never read --- alla righa n.29
    EDIT: rileggendo il codice mi sono accorto che avevo cancellato per sbaglio questo subito dopo la righa 29 rimettendolo l'errore sparisce , ho avviato l'applicazione è funziona , ma cliccando sul pulsante non succede nulla .

  10. #28
    Senior Droid L'avatar di Cymon


    Registrato dal
    Jul 2010
    Messaggi
    419

    Ringraziamenti
    7
    Ringraziato 43 volte in 42 Posts
    Predefinito

    Alora, un po' di cose che non mi tornano...

    Innanzitutto quando il programma si lamentavi che non usavi mai drawable aveva ragione, ma non era il caso di accontentare i suoi capricci

    La riga



    serviva nella versione precedente del codice per vedere che il clipping funzionasse quindi in questa nuova versione è superflua. In realtà però avrei fatto in modo che anche le nuove funzionalità si adattassero a quanto fatto precedentemente, altro modo per impedire al codice di lamentarsi di variabili inutili.
    Per esempio non mi torna granché:



    Non mi è assolutamente chiara la dichiarazione final e poi ci eravamo trovati tanto bene col vecchio codice a usare la getBackground sull'ImageView...

    Quindi, la mia soluzione è: dichiarare la variabile clipDrawable a livello di classe, come level, così da evitarci problemi di accesso.



    sotto la riga 21.

    Poi popoli la variabile con la riga che abbiamo scritto prima (rinomino drawable per non stare a cambiare tutto il listener



    A questo punto cancelli l'altro popolamento di clipDrawable con il final e pure il setLevel che hai riaggiunto dal codice precedente (ora non hai da temere, la variabile sarà abbondantemente usata) e dovresti riuscire a ottenere quello che vuoi.
    La mia katana: Slackware 13.1
    La mia wakizashi: Acer A1 Liquid con Android 2.1 Eclair
    Il mio sito: Follow the rabbit (con la sua App )

  11. #29
    Androidiano


    Registrato dal
    Dec 2009
    Messaggi
    70

    Ringraziamenti
    12
    Ringraziato 2 volte in 2 Posts
    Predefinito

    ciao , non riesco a capire cosa faccio di sbagliato


    rimodificando dinuovo clipTestActivity mi appare questo errore
    The field ClipTestActivity.clipDrawable is never read locally nella righa 22 ed Duplicate field ClipTestActivity.clipDrawable nelle righe 20 e 22
    ciao

    ho editato il messaggio
    Ultima modifica di al3x88; 06-08-10 alle 00:53

  12. #30
    Senior Droid L'avatar di Cymon


    Registrato dal
    Jul 2010
    Messaggi
    419

    Ringraziamenti
    7
    Ringraziato 43 volte in 42 Posts
    Predefinito

    Quote Originariamente inviato da al3x88 Visualizza il messaggio
    ciao , non riesco a capire cosa faccio di sbagliato

    rimodificando dinuovo clipTestActivity mi appare questo errore
    Ha ben ragione lui, visto che poi quel drawable non lo usi più...
    Non è che ti sei scordato la setLevel nel listener?
    La mia katana: Slackware 13.1
    La mia wakizashi: Acer A1 Liquid con Android 2.1 Eclair
    Il mio sito: Follow the rabbit (con la sua App )

Pagina 3 di 4 primaprima 1234 ultimoultimo
Ultima pagina

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