Autore Topic: Richiamare un'Activity in un Fragment attaccato ad una ActionBar  (Letto 703 volte)

Offline reb2awrl

  • Nuovo arrivato
  • *
  • Post: 3
  • Respect: 0
    • Mostra profilo
0
Ciao ragazzi da poco mi sono addentrato in questo mondo e sto facendo vari esperimenti per capire un po' meglio il funzionamento.

Per la mia applicazione ho creato un ActionBar dove aggiungo diversi tab.
In uno di questi tab ho attaccato WebViewGerenza(il codice sotto) e all'interno di WebViewGerenza chiamo la mia GerenzaActivity.
Il tutto funziona perfettamente soltanto che ogni volta mi si apre una nuova View andando a coprire la mia ActionBar.
La mia domanda è come è possibile richiamare la mia Activity dentro il Fragment ma mantenendo in alto la mia ActionBar?

Codice (Java): [Seleziona]
public class WebViewGerenza extends Fragment{
...
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        Intent intent = new Intent(getActivity().getBaseContext(), GerenzaActivity.class);
        startActivity(intent);
        return super.onCreateView(inflater, container, savedInstanceState);
}
...

Questa è la mia Activity che fa uso del framework phonegap
Codice (Java): [Seleziona]
public class GerenzaActivity extends DroidGap{
       
        @Override
        public void onCreate(Bundle savedInstanceState) {
                super.onCreate(savedInstanceState);
                super.loadUrl("file:///android_asset/www/index.html",10000);
        }

}

Offline blackgin

  • Moderatore globale
  • Utente storico
  • *****
  • Post: 1387
  • Respect: +164
    • Google+
    • blackgins
    • blackginsoft
    • Mostra profilo
  • Dispositivo Android:
    Galaxy Nexus
  • Sistema operativo:
    Mac OSX 10.8
Re:Richiamare un'Activity in un Fragment attaccato ad una ActionBar
« Risposta #1 il: 21 Aprile 2013, 12:07:38 CEST »
0
Se vuoi che il layout rimanga nel fragment, non devi avviare una nuova activity (che ha una sua actionbar). Devi impostare il layout nel fragment.
Ora io non ho idea di come si lavori con PhoneGap, ma per un fragment normale la onCreateView sarebbe qualcosa del genere:
Codice (Java): [Seleziona]
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        View v = inflater.inflate(R.layout.il_layout, container, false);
        // Ti recuperi le View che ti servono tramite v.findViewById()
        return v;
}
Postate il LogCat LogCat LogCat LogCat LogCat

Offline reb2awrl

  • Nuovo arrivato
  • *
  • Post: 3
  • Respect: 0
    • Mostra profilo
Re:Richiamare un'Activity in un Fragment attaccato ad una ActionBar
« Risposta #2 il: 21 Aprile 2013, 13:16:54 CEST »
0
Ho capito quello che vuoi dire ma per richiamare la classe GerenzaActivity come dovrei fare??
La classe GerenzaActivity la devo eliminare e devo richiamare la webview nel mio fragment passandogli l'url??

Offline blackgin

  • Moderatore globale
  • Utente storico
  • *****
  • Post: 1387
  • Respect: +164
    • Google+
    • blackgins
    • blackginsoft
    • Mostra profilo
  • Dispositivo Android:
    Galaxy Nexus
  • Sistema operativo:
    Mac OSX 10.8
Re:Richiamare un'Activity in un Fragment attaccato ad una ActionBar
« Risposta #3 il: 21 Aprile 2013, 15:06:56 CEST »
0
Ripeto, non ho esperienza con PhoneGap. Ma facendo una breve ricerca ho trovato questo: PhoneGap API Documentation
Usa questa view nel layout del tuo fragment, dovrebbe fare al caso tuo.
Postate il LogCat LogCat LogCat LogCat LogCat

Offline reb2awrl

  • Nuovo arrivato
  • *
  • Post: 3
  • Respect: 0
    • Mostra profilo
Re:Richiamare un'Activity in un Fragment attaccato ad una ActionBar
« Risposta #4 il: 21 Aprile 2013, 16:51:31 CEST »
0
Ho letto un paio di articoli in merito all'inglobare un cordovawebview in un fragment ma ho visto che poi da molti problemi, in quanto phonegap è principalmente costruito per essere usato nella Activity e non i Fragment.

Per questo motivo avevo fatto una semplice classe che estendeva DroidGap che in pratica è come se estendesse una Activity.

Grazie lo stesso per l'aiuto vedrò qualche altra soluzione.