Visualizzazione stampabile
-
Mh, noto comunque che la documentazione android sull'argomento è ambigua o_O
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> o_O
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?
-
Ogni cosa è illuminata :cool:
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.
:cool:
-
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.
-
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
-
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
-
Quote:
Originariamente inviato da
al3x88
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?
-
Quote:
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
Quote:
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 .
-
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.
-
ciao , non riesco a capire cosa faccio di sbagliato :):-[
rimodificando dinuovo clipTestActivity mi appare questo errore
Quote:
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
-
Quote:
Originariamente inviato da
al3x88
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? :p