Sto provando a creare tab layout with fragments
. Quando aggiungo un altro frammento sull'elemento clic, dovrebbe mostrare un altro frammento sopra di esso. Non riesco a ottenere l'obiettivo. Il frammento va sopra quello esistente ma entrambi i frammenti sono visibili. Si prega di non gettare il link verso qualsiasi pagina di sviluppo per la spiegazione.Come aggiungere un altro frammento sul frammento esistente?
Ecco il mio codice
home_activity.xml
<TabHost
android:id="@android:id/tabhost"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_alignParentBottom="true" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<TabWidget
android:id="@android:id/tabs"
android:layout_width="match_parent"
android:layout_height="wrap_content" >
</TabWidget>
<FrameLayout
android:id="@android:id/tabcontent"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<fragment
android:id="@+id/tab1"
android:layout_width="match_parent"
android:layout_height="match_parent"
class="com.example.tabsfragment.School_Fragment" >
</fragment>
<fragment
android:id="@+id/tab2"
android:layout_width="match_parent"
android:layout_height="match_parent"
class="com.example.tabsfragment.Sports_Fragment" >
</fragment>
</FrameLayout>
</LinearLayout>
</TabHost>
Home_Activity.java
public class Home_Activity extends FragmentActivity {
TabHost mHost;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.home_activity);
mHost = (TabHost) findViewById(android.R.id.tabhost);
mHost.setup();
TabSpec schoolSpec = mHost.newTabSpec("School").setIndicator("School")
.setContent(R.id.tab1);
mHost.addTab(schoolSpec);
TabSpec sportSpec = mHost.newTabSpec("Sports").setIndicator("Sportss")
.setContent(R.id.tab2);
mHost.addTab(sportSpec);
mHost.setCurrentTab(1);
}
entertainment.xml
<FrameLayout
android:id="@+id/frameContainer"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button" />
</FrameLayout>
sto aggiungendo un altro frammento su list_item_click
all'interno Sports_Fragment
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) {
// TODO Auto-generated method stub
FragmentTransaction ft = getFragmentManager().beginTransaction();
Entertainment_Fragment enFragment = new Entertainment_Fragment();
ft.replace(android.R.id.tabcontent, enFragment);
ft.commit();
}
Ecco esimo e snapshot:
Tutte le idee/aiuto con la spiegazione sarebbe molto apprezzato.
Grazie !!
* Sto cercando di creare layout di scheda con frammenti * - don 't. Frammenti come schede devono essere aggiunti in fase di runtime. – Luksprog
@Luksprog quindi qual è il modo di farlo ?? Qualsiasi esempio plz – moDev
@droid dev Ho implementato swipeTabs personalizzati + viewpager not sherlockActiionBar. Se vuoi puoi postare qui solution..it è facile da implementare. Ma il fatto è che non puoi aggiungere il frammento in modo dinamico. Quindi dipende da te. – TheFlash