Autore Topic: Passaggio parametro da una activity ad un dialog di un\'altra activity  (Letto 969 volte)

Offline Ivan86

  • Utente junior
  • **
  • Post: 139
  • Respect: +1
    • Mostra profilo
  • Dispositivo Android:
    Samsung Galaxy S II
  • Sistema operativo:
    Windows 7
Ciao.

Ho il seguente problema.
Ho MappaActivity che contiene un button che mi apre un Cutom Dialog.
All'interno di quest'ultimo ho un button che mi fa accedere alla FotoActivity per scattare una foto.
A foto correttamente salvata vorrei tornare alla MappaActivity, con il CutomDialog ancora aperto e con il passaggio del nome della foto.

Spero di essermi spiegato :)

Io per adesso ho provato nella FotoActivity a fare così:
Codice (Java): [Seleziona]
                Intent i = new Intent(getApplicationContext(), MappaActivity.class);
                String pkg=getPackageName();   
                i.putExtra(pkg+".myString", nomeFoto + ".jpg"); //passaggio del parametro string con il nome dalla foto
                startActivity(i);
ma ovviamente mi apre solamente la MappaActivity senza CustomDialog.

Mi servirebbe praticamente sapere come si fa (e se si può fare) a tornare indietro chiudendo l'activity Foto, passare la stringa e a mantenere il Dialog aperto.

Grazie

Post unito: 03 Aprile 2013, 10:21:47 CEST
Nessuno mi può consigliare niente? :(
« Ultima modifica: 04 Aprile 2013, 19:18:18 CEST da Ivan86 »

Offline lorux

  • Utente junior
  • **
  • Post: 97
  • Respect: +12
    • Google+
    • lor.catalano
    • Mostra profilo
  • Dispositivo Android:
    Galaxy S2
  • Sistema operativo:
    Windows
Re:Passaggio parametro da una activity ad un dialog di un\'altra activity
« Risposta #1 il: 03 Aprile 2013, 12:58:03 CEST »
0
ma la foto activity la chiami con startactivityfor result?

Offline Ivan86

  • Utente junior
  • **
  • Post: 139
  • Respect: +1
    • Mostra profilo
  • Dispositivo Android:
    Samsung Galaxy S II
  • Sistema operativo:
    Windows 7
Re:Passaggio parametro da una activity ad un dialog di un\'altra activity
« Risposta #2 il: 03 Aprile 2013, 14:23:12 CEST »
0
No, con una chiamata normale.

Non sapevo di questa StartActivityForResult.
Ho fatto una ricerca: Android : startActivityForResult() Example | Android
ma non mi è molto chiara.

Se non ho capito male io dovrei, dal dialog aperto da MappaActivity, chiamare la FotoActivity con startActivityForResult, faccio scattare la foto
e poi dopo il caricamento di questa automaticamente torno alla MappaActivity.
Ma come?
Rimarrà il dialog aperto?

Offline lorux

  • Utente junior
  • **
  • Post: 97
  • Respect: +12
    • Google+
    • lor.catalano
    • Mostra profilo
  • Dispositivo Android:
    Galaxy S2
  • Sistema operativo:
    Windows
Re:Passaggio parametro da una activity ad un dialog di un\'altra activity
« Risposta #3 il: 03 Aprile 2013, 14:38:39 CEST »
+1
come la stai chiamando tu stai praticamente startando una nuova istanza della tua MappaActivity,non stai tornando a quella di prima.

la FotoActivity la chiami con startActivityForResult(i),nella foto activity fai quello che devi fare,e quando devi richiamare MappaActivity fai

Codice (Java): [Seleziona]
Intent returnIntent = new Intent();
 returnIntent.putExtra("result",result);
 setResult(RESULT_OK,returnIntent);    
 finish();

nella MappaActivity dovresti implementare il metodo onActivityResult e fare quello che devi fare.

dai un'occhio qui Android, How to manage start activity for result? - Stack Overflow

non sono sicuro che il dialog venga mantenuto,probabilmente si,ma vabbè in caso contrario lo rimostri

Offline Ivan86

  • Utente junior
  • **
  • Post: 139
  • Respect: +1
    • Mostra profilo
  • Dispositivo Android:
    Samsung Galaxy S II
  • Sistema operativo:
    Windows 7
Re:Passaggio parametro da una activity ad un dialog di un\'altra activity
« Risposta #4 il: 04 Aprile 2013, 11:11:50 CEST »
0
Ciao, grazie 1000 per le delucidazioni.
Ho visto il link che hai postato e penso di aver riprodotto correttamente quanto scritto.

Il custom dialog invece me lo chiude.
E' importante che rimanga caricato anche perchè sarà stato popolato e quindi ricaricarlo da zero me lo restituirebbe vuoto.
Subito dopo lo scatto e caricamento della foto su server, su FotoActivity faccio questo:
Codice (Java): [Seleziona]
        protected void onPostExecute(String foto) {
                pd.dismiss();
               
                Intent returnIntent = new Intent();
                returnIntent.putExtra("fotografia",foto);
                setResult(RESULT_OK,returnIntent);    
                finish();
           
            Toast.makeText(FotoActivity.this, "Foto caricata con successo!", Toast.LENGTH_LONG).show();
        }
Come faccio a mantenere attivo il dialog della MappaActivity?

Offline lorux

  • Utente junior
  • **
  • Post: 97
  • Respect: +12
    • Google+
    • lor.catalano
    • Mostra profilo
  • Dispositivo Android:
    Galaxy S2
  • Sistema operativo:
    Windows
Re:Passaggio parametro da una activity ad un dialog di un\'altra activity
« Risposta #5 il: 04 Aprile 2013, 11:48:30 CEST »
0
eh se non lo mantiene allora nell'onactivityresult lo ricrei,lo riempi col dato che hai ricevuto dall'intent e lo mostri

Offline Ivan86

  • Utente junior
  • **
  • Post: 139
  • Respect: +1
    • Mostra profilo
  • Dispositivo Android:
    Samsung Galaxy S II
  • Sistema operativo:
    Windows 7
Re:Passaggio parametro da una activity ad un dialog di un\'altra activity
« Risposta #6 il: 04 Aprile 2013, 19:18:09 CEST »
0
Grazie.

I suggerimenti e link che mi hai consigliato sono stati ottimi!
:)