Autore Topic: Schermata presentazione  (Letto 1199 volte)

Offline mimmog

  • Utente senior
  • ****
  • Post: 731
  • Respect: +11
    • MisterX_Dev
    • Mostra profilo
  • Dispositivo Android:
    Galaxy Note e Galaxy Nexus
  • Play Store ID:
    MisterX_Dev
  • Sistema operativo:
    Windows 7
Schermata presentazione
« il: 30 Maggio 2011, 14:33:47 CEST »
0
Vorrei far partire il programma con una sorta di schermata di presentazione che duri un 3/4 secondi per fare questo avevo pensato a far visualizzare la schermata e far partire un CountDownTimer al cui scadere mi fa partire il programma, che dite è pulita come cosa oppure esiste un metodo migliore ?

Offline mangusto

  • Utente normale
  • ***
  • Post: 152
  • Respect: +5
    • Google+
    • Mostra profilo
  • Dispositivo Android:
    ZTE Blade
  • Play Store ID:
    Leonardo Preti
  • Sistema operativo:
    Windows 7
Re:Schermata presentazione
« Risposta #1 il: 30 Maggio 2011, 16:49:46 CEST »
+1
Intendi uno splashscreen? Guarda qui: How to: Create a splash screen on Android Development

Offline mimmog

  • Utente senior
  • ****
  • Post: 731
  • Respect: +11
    • MisterX_Dev
    • Mostra profilo
  • Dispositivo Android:
    Galaxy Note e Galaxy Nexus
  • Play Store ID:
    MisterX_Dev
  • Sistema operativo:
    Windows 7
Re:Schermata presentazione
« Risposta #2 il: 31 Maggio 2011, 02:03:27 CEST »
0
Ciao, si in effetti è quello che voglio fare io,alla fine però vedendo il codice questo tipo usa un thread e CountDownTimer è comunque un thread quindi credo sia la stessa cosa... ;)

Offline ALEX88-ANDR0!D

  • Utente normale
  • ***
  • Post: 173
  • The Special One
  • Respect: +13
    • Google+
    • droidev88
    • Mostra profilo
  • Dispositivo Android:
    HTC DESIRE HD
  • Sistema operativo:
    WINDOWS 7
Re:Schermata presentazione
« Risposta #3 il: 04 Giugno 2011, 01:54:02 CEST »
0
ciao mangusto, grazie... mi sarà molto utile per la mia seconda app !! 
È stata trovata una soluzione al tuo problema?
Evidenzia il post più utile premendo . È un ottimo modo per ringraziare chi ti ha aiutato ;).
E se hai aperto tu il thread marcalo come risolto cliccando !

Offline mimmog

  • Utente senior
  • ****
  • Post: 731
  • Respect: +11
    • MisterX_Dev
    • Mostra profilo
  • Dispositivo Android:
    Galaxy Note e Galaxy Nexus
  • Play Store ID:
    MisterX_Dev
  • Sistema operativo:
    Windows 7
Re:Schermata presentazione
« Risposta #4 il: 16 Giugno 2011, 21:34:54 CEST »
0
Riprendo un attimo questo posto per chiedere : è possibile dopo la visualizzazione di questa schermata di presentazione farla sparire dallo stack ?

in pratica dopo la schermata di presentazine si va alla prima schermata del programma però poi vorrei che premendo il tasto back si uscisse proprio dal programma, potrei farlo con i vari finish e gli onResult però mi chiedevo se c'è unmodo per eliminare completamente un acticity dallo stack...

Offline Nicola_D

  • Utente storico
  • *****
  • Post: 2479
  • SBAGLIATO!
  • Respect: +323
    • Github
    • Google+
    • nicoladorigatti
    • Mostra profilo
  • Dispositivo Android:
    Nexus 6p, Nexus 4, Nexus S, Nexus 7(2012)
  • Sistema operativo:
    Windows 7
Re:Schermata presentazione
« Risposta #5 il: 17 Giugno 2011, 01:34:08 CEST »
0
Riprendo un attimo questo posto per chiedere : è possibile dopo la visualizzazione di questa schermata di presentazione farla sparire dallo stack ?

in pratica dopo la schermata di presentazine si va alla prima schermata del programma però poi vorrei che premendo il tasto back si uscisse proprio dal programma, potrei farlo con i vari finish e gli onResult però mi chiedevo se c'è unmodo per eliminare completamente un acticity dallo stack...
se fai il finish viene eliminata dallo stack
IMPORTANTE:NON RISPONDO A PROBLEMI VIA MESSAGGIO PRIVATO
LOGCAT: Non sai cos'è? -> Android Debug Bridge | Android Developers
               Dov'è in Eclipse? -> Window -> Open Prospective -> DDMS e guarda in basso!
[Obbligatorio] Logcat, questo sconosciuto! (Gruppo AndDev.it LOGTFO) - Android Developers Italia

Offline mimmog

  • Utente senior
  • ****
  • Post: 731
  • Respect: +11
    • MisterX_Dev
    • Mostra profilo
  • Dispositivo Android:
    Galaxy Note e Galaxy Nexus
  • Play Store ID:
    MisterX_Dev
  • Sistema operativo:
    Windows 7
Re:Schermata presentazione
« Risposta #6 il: 17 Giugno 2011, 09:04:12 CEST »
0
Si però se io dalla schermata di presentazione facessi partire l'intent che carica la seconda schermata del programma e poi premessi il tasto back (senza usare l'onResult) mi ritornerebbe alla schermata di presentazione mentre io vorrei che la schermata di presentazione dopo il lancio dell'intent si eliminasse completamente dallo stack, sempre se questa cosa fosse possibile...

Offline Nicola_D

  • Utente storico
  • *****
  • Post: 2479
  • SBAGLIATO!
  • Respect: +323
    • Github
    • Google+
    • nicoladorigatti
    • Mostra profilo
  • Dispositivo Android:
    Nexus 6p, Nexus 4, Nexus S, Nexus 7(2012)
  • Sistema operativo:
    Windows 7
Re:Schermata presentazione
« Risposta #7 il: 17 Giugno 2011, 10:02:56 CEST »
+1
E io ti ripeto...se fai finish la chiudi e la togli dallo stack.
per farmi capire di piu,quando fai lo startactivity per far partire la seconda schermata,fai anche il finish,subito dopo
IMPORTANTE:NON RISPONDO A PROBLEMI VIA MESSAGGIO PRIVATO
LOGCAT: Non sai cos'è? -> Android Debug Bridge | Android Developers
               Dov'è in Eclipse? -> Window -> Open Prospective -> DDMS e guarda in basso!
[Obbligatorio] Logcat, questo sconosciuto! (Gruppo AndDev.it LOGTFO) - Android Developers Italia

Offline mimmog

  • Utente senior
  • ****
  • Post: 731
  • Respect: +11
    • MisterX_Dev
    • Mostra profilo
  • Dispositivo Android:
    Galaxy Note e Galaxy Nexus
  • Play Store ID:
    MisterX_Dev
  • Sistema operativo:
    Windows 7
Re:Schermata presentazione
« Risposta #8 il: 17 Giugno 2011, 10:20:49 CEST »
0
Ah ora ho capito! grazie!  ;-)

Offline Zappescu

  • Utente junior
  • **
  • Post: 110
  • Respect: +7
    • Mostra profilo
    • Tic Tank Toe
  • Dispositivo Android:
    HTC Magic
  • Play Store ID:
    Zapmobilegames
  • Sistema operativo:
    Win XP
Re:Schermata presentazione
« Risposta #9 il: 17 Giugno 2011, 13:30:06 CEST »
0
Una piccola aggiunta: non metterci uno splashscreen con timer fisso. E' uno spreco di tempo non gradito.
Se il tuo splash screen fa qualcosa di utile (es: mostra l'animazione relativa al developer, come nel mio gioco), approfitta del tempo perso ed usa quei secondi per settare le variabili dell'app.
Io ho messo lo splash screen in un thread nell'OnCreate in modo che, mentre va il filmato, carico il menu del gioco e tutte le variabili che mi servono.

Codice (Java): [Seleziona]
// Lancio l'activity SplashScreen:
                Thread splashTread = new Thread() {
                                @Override
                                public void run() {
                                        startActivityForResult(new Intent(Herculaneum.this,
                                                SplashScreen.class),SUB_ACTIVITY_REQUEST_CODE);
                                }
                    };
                    splashTread.start();

Alla fine dell'animazione di intro, parte rapidamente il menu del gioco perchè i vari calcoli sono già stati fatti.
Zapmobilegames website
Tic Tank Toe: a new approach for a classic game

Offline mimmog

  • Utente senior
  • ****
  • Post: 731
  • Respect: +11
    • MisterX_Dev
    • Mostra profilo
  • Dispositivo Android:
    Galaxy Note e Galaxy Nexus
  • Play Store ID:
    MisterX_Dev
  • Sistema operativo:
    Windows 7
Re:Schermata presentazione
« Risposta #10 il: 17 Giugno 2011, 13:40:19 CEST »
0
Certo,  non la stò facendo per bellazza questa schermata ma perchè deve scaricare dei dati dal web e caricarli in un DB ;)

Offline mimmog

  • Utente senior
  • ****
  • Post: 731
  • Respect: +11
    • MisterX_Dev
    • Mostra profilo
  • Dispositivo Android:
    Galaxy Note e Galaxy Nexus
  • Play Store ID:
    MisterX_Dev
  • Sistema operativo:
    Windows 7
Re:Schermata presentazione
« Risposta #11 il: 19 Giugno 2011, 12:49:53 CEST »
0
Scusate potete dare un'occhiata al mio codice ? non funziona qualcosa perchè dopo lo splahscreen  passa alla seconda activity e se poi premo back in effetti esce dal programma però dopo 5 secondi il programma riparte in automatico da solo !!! oltretutto non riparte exnovo dallo splahscreen ma direttamente dalla seconda activity...ecco il codice
Codice (Java): [Seleziona]
@Override
        protected void onCreate(Bundle savedInstanceState) {
                super.onCreate(savedInstanceState);
                setContentView(R.layout.intro);
                progress = (ProgressBar) findViewById(R.id.progressIntro);
                thread = new Intro_thread(handler);
                thread.start();
        }

        final Handler handler = new Handler(){

                @Override
                public void handleMessage(Message msg) {
                        int c = msg.arg1;
                        if(c == 1){
                                thread.stop();
                                progress.setVisibility(View.GONE);
                                Intent intent = new Intent(getBaseContext(),categorie.class);
                                finish();
                                startActivity(intent);
                                msg.arg1 = 0;
                        }
                }
               
        };
       
        public class Intro_thread implements Runnable{
                boolean running;
                Handler handler;
                Thread thread_intro;
               
                public Intro_thread(Handler h){
                        this.handler = h;
                }
                @Override
                public void run() {
                        while(running){
                                try {
                                        Thread.sleep(5000);
                                        Message msg = handler.obtainMessage();
                                        msg.arg1 = 1;
                                        handler.sendMessage(msg);
                                       
                                } catch (InterruptedException e) {
                                        e.printStackTrace();
                                }
                        }
                }
               
                public void start(){
                        if (!running) {
                                running = true;
                                thread_intro = new Thread(this);
                                thread_intro.start();
                        }
                }
               
                public void stop(){
                        if (running) {
                                running = false;
                                thread_intro = null;
                        }
                }
        }

Offline mimmog

  • Utente senior
  • ****
  • Post: 731
  • Respect: +11
    • MisterX_Dev
    • Mostra profilo
  • Dispositivo Android:
    Galaxy Note e Galaxy Nexus
  • Play Store ID:
    MisterX_Dev
  • Sistema operativo:
    Windows 7
Re:Schermata presentazione
« Risposta #12 il: 19 Giugno 2011, 13:24:51 CEST »
0
Ho risolto mettendo nel
Codice (Java): [Seleziona]
try {
                                        Thread.sleep(5000);
                                        Message msg = handler.obtainMessage();
                                        msg.arg1 = 1;
                                        handler.sendMessage(msg);
                                       
                                } catch (InterruptedException e) {
                                        e.printStackTrace();
                                }

un finallystop(); ho visto che il problema era che dopo handler.sendMessage(msg); faceva un altro giro nel ciclo while e non capisco come mai dato che nell'handler comunque c'è la riga thread.stop(); mi saptete dire perchè ???  :-\