Ciao,
sto sviluppando un'applicazione che nella Activity principale (home.class) ha due tab.
Nel primo tab includo un'altra Activity con una mappa di Google Maps (tabmap.class).
Layout prima activity:
codice:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<TabHost
android:id="@android:id/tabhost"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_marginTop="5dip">
<LinearLayout
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<TabWidget
android:id="@android:id/tabs"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@null"
android:layout_marginLeft="-2dp"
android:layout_marginRight="-2dp" />
<FrameLayout
android:id="@android:id/tabcontent"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<TextView
android:id="@+id/textview1"
android:layout_width="fill_parent"
android:layout_height="fill_parent" />
<TextView
android:id="@+id/textview2"
android:layout_width="fill_parent"
android:layout_height="fill_parent" />
</FrameLayout>
</LinearLayout>
</TabHost>
</LinearLayout>
Inserisco la mappa nel tab da codice nell'activity principale:
codice:
...
TabHost mTabHost = getTabHost();
TabSpec tabSpec = mTabHost.newTabSpec("tab_test1");
tabSpec.setIndicator("Mappa");
//creo l'intent che punta all'activity contenente la mappa
Intent i = new Intent(this.getApplicationContext(), tabmap.class);
tabSpec.setContent(i);
//aggiungo il secondo tab che contiene una textview
mTabHost.addTab(tabSpec);
mTabHost.addTab(mTabHost.newTabSpec("tab_test2").setIndicator("Secondo tab").setContent(R.id.textview2));
mTabHost.setCurrentTab(0);
...
Vorrei passare dati dall'Activity della Mappa(tabmap.class) contenuta nel primo tab(tab_test1) al secondo tab(tab_test2) dell'Activity
principale(home.class). Nello specifico adesso vorrei scrivere sulla textview (R.id.textview2) contenuta nel secondo tab, però più in
generale mi interesserebbe capire come passare i dati all'activity.
Posso referenziare direttamente l'oggetto? Posso passare dati da una activity ad un'altra senza lasciare l'activity corrente?
Stavo pensando a qualcosa del genere
codice:
//su tabmap.class
Intent i = new Intent(this.getApplicationContext(), home.class);
i.putExtra("chiave", "valore");
Ma poi come posso far si che home.class riceva le informazioni ed esegua un metodo che popoli R.id.textview2, il tutto rimanendo sul tab
della mappa?
Mi sono capito?
Riuscite a darmi una mano?
Grazie mille e buona giornata,
Marco