CERCA
PER MODELLO
FullScreen Chatbox! :)

Utente del giorno: megthebest con ben 2 Thanks ricevuti nelle ultime 24 ore
Utente della settimana: megthebest con ben 6 Thanks ricevuti negli ultimi sette giorni
Utente del mese: megthebest con ben 20 Thanks ricevuti nell'ultimo mese

Pagina 59 di 101 primaprima ... 949575859606169 ... ultimoultimo
Ultima pagina
Visualizzazione dei risultati da 581 a 590 su 1008
Discussione:

[Sviluppo][Entrate ad aiutare!] NowLauncher, il primo launcher community developed!

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. #581
    Androidiano VIP L'avatar di dema121


    Registrato dal
    May 2012
    Messaggi
    1,436
    Smartphone
    Galaxy Ace, Nexus 7, Nexus 5

    Ringraziamenti
    20
    Ringraziato 580 volte in 420 Posts
    Predefinito

    Il problema che la barra ogni tanto non riconoscre lo spostamento è dovuto al continuo controllo del touch sulla barra.
    Se si sposta la barra piano non ci sono problema perchè la barra viene spostata rapidamente e il touch è sempre all'interno dell'intervallo, ma se si sposta velocemente il sistema potrebbe non riconoscere più il touch all'interno e quindi lasciare la barra dove è!

    La possibile soluzione potrebbe essere di verificare se il touch è all'interno della barra solo all'inzio (e impostare un booleano) per poi spostare la barra sotto l'if del booleano:

    all'inizio della activity
    codice:
    public boolean checkbarpressed = (boolean) false;
    E poi l'evento OnTouchEvent:
    codice:
    public boolean onTouchEvent(MotionEvent event) {
    
            /**
             * EN
             * Get y value, calculate if touch is in tollerance zone of drop down bar
             *
             * IT
             * Ottiene il valore di y e calcola se il touch è nella zona di tolleranza della drop down bar
             */
    
    
            int y = (int) event.getY();
            int yiniziale;
            if ((y >= (dropdownbar2.getTop() - TOLLERANCE_TOP ) ) & ( y <= (dropdownbar2.getBottom() + TOLLERANCE_BOTTOM )) & (checkbarpressed==false)) {
                checkbarpressed=true;
                yiniziale=y;
            }
    
            if (checkbarpressed==true) {
                RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT);
                statusBarOffset = dm.heightPixels - rootlayout.getHeight();
                /**
                 * EN
                 * If the touch is over the minimal bar position before compression set it in the minimal position
                 *
                 * IT
                 * Se il touch è oltre la posizione minima della barra prima di ridursi di altezza la barra viene posizionata nel punto minimo
                 */
                if ((rootlayout.getHeight() - (y - statusBarOffset)) <= dropdownbar2.getHeight())
                    params.topMargin = rootlayout.getHeight() - dropdownbar2.getHeight();
                else if ((y - statusBarOffset) <= dropdownbar2.getHeight())
                    params.topMargin = 0;
                else params.topMargin = y - statusBarOffset - dropdownbar2.getHeight()/2;
    
                dropdownbar2.setLayoutParams(params);
            }
            return false;
        }
    Bisogna reimpostare il booleano su false quando si stacca il dito dallo schermo e allo stesso tempo si può verificare il deltay (yiniziale-y) e se è maggiore di 0 spostare la barra in cima, se è minore di 0 spostare la barra in fondo.
    Che eventi ci sono che possiamo usare?

    Comunque rimane un problema... che in realtà non si porrà se "forziamo" la barra in alto e in basso. Se la barra è sull'include3 (cosa ci andrà?) l'evento touch non si presenta...
    My device:
    SMARTPHONE: SAMSUNG GALAXY ACE GT-S5830
    ROM: Androidiani Experience Final (2.3.7)

    SMARTPHONE: LG NEXUS 5
    ROM: Stock

    TABLET: ASUS GOOGLE NEXUS 7
    ROM: Stock


    Now Launcher Developer

  2. I seguenti 3 Utenti hanno ringraziato dema121 per il post:

    dedeswim (29-05-13),Jeeko (29-05-13),salv9 (29-05-13)

  3.  
  4. #582
    mm7
    mm7 non è in linea
    Senior Droid


    Registrato dal
    Oct 2012
    Messaggi
    762
    Smartphone
    Samsung Galaxy Ace

    Ringraziamenti
    43
    Ringraziato 254 volte in 172 Posts
    Predefinito

    Ehi ciao dema, sei anche qui a farci compagnia benvenuto nel team

    Purtroppo anche qui non c'è la soluzione al problema iniziale l'evento onTouchEvent non viene richiamato nonostante venga premuto il touch!!. Per quanto riguarda quello che hai detto trovo che sia un ottima cosa cosi anche nei terminali più lenti non si evita di uscire dall'intervallo.
    Per quanto riguarda la domanda "Che eventi ci sono che possiamo usare?" è semplice :

    La stessa onTouchEvent!:

    codice:
    if (event.getAction() == MotionEvent.ACTION_UP) {
       do something
    
    }
    Dove chiaramente event è il parametro della funzione onTouch motion event e ACTION_UP significa rilascio del dito.

    L'include 3 incluederà delle icone.

    Lavorando per mettere l'animazione che fa salire o scendere la barra (ho usato i TraslateAnimation) ho trovato il problema che la barra si muove ma il drawer agganciato ad essa con il below (relative layout) non la segue e inoltre dopo l'animazione la barra non si muove correttamente, quindi ho risolto mettendo alla fine dell'animazione un setTop che risistema il drawer ma durante l'animazione il drawer non si muove e si aggancia solo alla fine. Creare due animazioni contemporanee potrebbe essere la soluzione ma viene una cosa sporchissima e inaccettabile. Comunque ecco cosa ho fatto:

    codice:
    		if (event.getAction() == MotionEvent.ACTION_UP) {
    		  
    			int originalPos[] = new int[2];
    			dropdownbar2.getLocationOnScreen( originalPos );
    			
    			Animation animation = new TranslateAnimation(0, 0, 0, 0 - originalPos[1] + statusBarOffset);
    
                            // il costruttore prevede 4 int, x iniziale, x finale, y iniziale e y finale. Tutte le coordinate sono relative al punto in cui si trova la view prima dell'animazione (es. 0,0,0,10 sposterà la view di 10dp in alto)
    
    			// A better form is:
    			// TraslateAnimation animation = new TranslateAnimation(0, 0, 0, -originalPos[1]);
    			// or
    			// TraslateAnimation animation = new TranslateAnimation(0, 0, 0, -(dropdownbar2.geTop()));
    			
    			animation.setDuration(1000);
    			animation.setFillAfter(false); // <-- fa in modo che a fine animazione la view rimanga nel posto e non ritorni al posto iniziale
    			dropdownbar2.startAnimation(animation);
    			animation.setInterpolator(new AccelerateInterpolator(ACCELERATION_VALUE));
    			
    			animation.setAnimationListener(new Animation.AnimationListener(){
    				
    				@Override
    				public void onAnimationStart(Animation anim) {
    				  
    				}        
    				
    				@Override
    				public void onAnimationRepeat(Animation anim) {
    				  
    				} 
    				
    				@Override
    				public void onAnimationEnd(Animation anim) {
    				
    					RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT);
    					params.topMargin = 0; <-- in questo caso la barra viene piazzata alla massima altezza
    					dropdownbar2.setLayoutParams(params);
    				
    				}
    			});
    		  
    		}


    std::string* name = new std::string("Mm7"); C++
    char *name = "Mm7" C
    name = "Mm7" Python
    public String name = "Mm7" Java
    section .data
    name db 'Mm7', 0x00 Assembly x86

  5. #583
    Androidiano VIP L'avatar di dema121


    Registrato dal
    May 2012
    Messaggi
    1,436
    Smartphone
    Galaxy Ace, Nexus 7, Nexus 5

    Ringraziamenti
    20
    Ringraziato 580 volte in 420 Posts
    Predefinito

    Non intendevo solo su device più lenti... Perchè anche sul nexus non ci sta dietro!
    Invece che usare un include non possiamo posizionare la barra e il drawer in un unico layout e riposizionare l'intero layout secondo l'evento?

    Comunque non capisco... È solo sull'include3 che non crea l'evento! Sul resto funziona!
    Vabbhe... Con la fine della scuola devo studiarmi un po' di java!
    My device:
    SMARTPHONE: SAMSUNG GALAXY ACE GT-S5830
    ROM: Androidiani Experience Final (2.3.7)

    SMARTPHONE: LG NEXUS 5
    ROM: Stock

    TABLET: ASUS GOOGLE NEXUS 7
    ROM: Stock


    Now Launcher Developer

  6. #584
    mm7
    mm7 non è in linea
    Senior Droid


    Registrato dal
    Oct 2012
    Messaggi
    762
    Smartphone
    Samsung Galaxy Ace

    Ringraziamenti
    43
    Ringraziato 254 volte in 172 Posts
    Predefinito

    Quote Originariamente inviato da dema121 Visualizza il messaggio
    Non intendevo solo su device più lenti... Perchè anche sul nexus non ci sta dietro!
    Invece che usare un include non possiamo posizionare la barra e il drawer in un unico layout e riposizionare l'intero layout secondo l'evento?

    Comunque non capisco... È solo sull'include3 che non crea l'evento! Sul resto funziona!
    Vabbhe... Con la fine della scuola devo studiarmi un po' di java!
    Be un layout unico sarebbe l'ideale in effetti..! (non so perchè non lo ho fatto )

    A me l'evento non parte anche in altre zone non solo nel include3 (quando funziona funziona anche li)


    std::string* name = new std::string("Mm7"); C++
    char *name = "Mm7" C
    name = "Mm7" Python
    public String name = "Mm7" Java
    section .data
    name db 'Mm7', 0x00 Assembly x86

  7. #585
    Androidiano VIP L'avatar di dema121


    Registrato dal
    May 2012
    Messaggi
    1,436
    Smartphone
    Galaxy Ace, Nexus 7, Nexus 5

    Ringraziamenti
    20
    Ringraziato 580 volte in 420 Posts
    Predefinito

    Una cosa più pulita è modificare il booleano checkbarpressed con l'evento OnTouch solo della dropdownbar2 quindi:
    codice:
    dropdownbar2.setOnTouchListener(new View.OnTouchListener() {
                @Override
                public boolean onTouch(View view, MotionEvent motionEvent) {
                    if(motionEvent.getAction() == MotionEvent.ACTION_DOWN) {
                        checkbarpressed=true;
                    }
                    return false;
                }
            });
    Per quanto riguarda il layout "unificato" della barra+drawer modifichiamo l'altezza del layout o la posizione come adesso?

    EDIT:
    impostato le animazioni di apertura e chiusura! Adesso la barra è "completa" ma c'è ancora il problema dell'include (su schermi dove la barra è sopra l'include).
    Carico su GitHub e carico anche l'apk compilato.

    @grafici: serve l'immagine normal e pressed della barra (.9.png)


    P.S: spero di non aver fatto casini con GitHub! è la prima volta che lo uso...
    Ultima modifica di dema121; 30-05-13 alle 17:58
    My device:
    SMARTPHONE: SAMSUNG GALAXY ACE GT-S5830
    ROM: Androidiani Experience Final (2.3.7)

    SMARTPHONE: LG NEXUS 5
    ROM: Stock

    TABLET: ASUS GOOGLE NEXUS 7
    ROM: Stock


    Now Launcher Developer

  8. #586
    Androidiano VIP L'avatar di Jeeko


    Registrato dal
    Nov 2012
    Messaggi
    1,339
    Smartphone
    Galaxy S2 Plus

    Ringraziamenti
    122
    Ringraziato 492 volte in 239 Posts
    Predefinito

    Se ricordo bene i .9.png sono quelli con 1px di bordo nero inutilizzato... provvedo io, speriamo di risolvere i problemi di connessione entro sta sera
    Intanto buono sviluppo
    Ultima modifica di Jeeko; 30-05-13 alle 19:47

    Samsung Galaxy S2 I9105P - Developer - PureSeries™Admin

    Now Browser, the lightest browser on the market (160kb)

  9. #587
    Senior Droid L'avatar di Nicoseven


    Registrato dal
    Aug 2012
    Località
    Lucca
    Messaggi
    527
    Smartphone
    Nexus 4

    Ringraziamenti
    74
    Ringraziato 82 volte in 63 Posts
    Predefinito

    VI sto seguendo da un po', mi complimento con tutti gli sviluppatori. Mi sto rendendo utile anche io: sto creando un video (creando da 0 o quasi) in cui viene messo in funzione il launcher da una mano inesistente in modo da poterlo presentare sul mio canale YouTube e nel post. Il video rispecchierà il progetto del launcher naturalmente

  10. Il seguente Utente ha ringraziato Nicoseven per il post:

    dedeswim (31-05-13)

  11. #588
    Androidiano VIP L'avatar di dema121


    Registrato dal
    May 2012
    Messaggi
    1,436
    Smartphone
    Galaxy Ace, Nexus 7, Nexus 5

    Ringraziamenti
    20
    Ringraziato 580 volte in 420 Posts
    Predefinito

    @Jeeko: non inutilizzato ma i "bordi" servono a dire al sistema come adattare/allungare l'immagine.
    Fai la barra più stretta possibile con i 3 trattini. Poi le 9patch le faccio io!

    @Nicoseven: chi si vede!
    My device:
    SMARTPHONE: SAMSUNG GALAXY ACE GT-S5830
    ROM: Androidiani Experience Final (2.3.7)

    SMARTPHONE: LG NEXUS 5
    ROM: Stock

    TABLET: ASUS GOOGLE NEXUS 7
    ROM: Stock


    Now Launcher Developer

  12. #589
    Senior Droid L'avatar di Nicoseven


    Registrato dal
    Aug 2012
    Località
    Lucca
    Messaggi
    527
    Smartphone
    Nexus 4

    Ringraziamenti
    74
    Ringraziato 82 volte in 63 Posts
    Predefinito

    Quote Originariamente inviato da dema121 Visualizza il messaggio
    @Jeeko: non inutilizzato ma i "bordi" servono a dire al sistema come adattare/allungare l'immagine.
    Fai la barra più stretta possibile con i 3 trattini. Poi le 9patch le faccio io!

    @Nicoseven: chi si vede!
    è sempre un piacere dema
    una cosa: se il launcher verrà bene, andrà sul GPlay?
    Ultima modifica di Nicoseven; 30-05-13 alle 20:08

  13. #590
    Androidiano VIP L'avatar di Jeeko


    Registrato dal
    Nov 2012
    Messaggi
    1,339
    Smartphone
    Galaxy S2 Plus

    Ringraziamenti
    122
    Ringraziato 492 volte in 239 Posts
    Predefinito

    Quote Originariamente inviato da dema121 Visualizza il messaggio
    @Jeeko: non inutilizzato ma i "bordi" servono a dire al sistema come adattare/allungare l'immagine.
    Fai la barra più stretta possibile con i 3 trattini. Poi le 9patch le faccio io!
    https://github.com/dedeswim/now-laun...bar_normal.png

    Sarebbe questa? Aspetto conferma per mettermi al lavoro

    Samsung Galaxy S2 I9105P - Developer - PureSeries™Admin

    Now Browser, the lightest browser on the market (160kb)

Pagina 59 di 101 primaprima ... 949575859606169 ... ultimoultimo
Ultima pagina

Tag per questa discussione

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