come impostare le schede nella parte inferiore dello schermo in Android?
-
18-09-2019 - |
Domanda
Sto lavorando su tabactivity.
voglio mostrare il mio TabWidget al di sotto della tabcontent (framelayout).
i fatto impostando l'attributo scheda tabwiget come
android:gravity="bottom"
ma la sopraelevazione framelayout allinearsi con quelle schede.
cioè le linguette sono mostrate nella parte inferiore dello schermo e si sovrappongono l'framelayout
come fare? se impostato un valore di altezza al framelayout non è ottimizzato per tutti gli schermi di android. cosa posso fare? qualche idea???
Soluzione
o semplicemente utilizzare uno personalizzato da: http://code.google.com/p/androidtabs/
permette linguette sul fondo
Altri suggerimenti
Il concetto alla base del Tab-Activity
come segue
TabHost
è un contenitore per una vista finestra a schede.
Questo oggetto contiene due figli: una serie di etichette di tabulazione che l'utente fa clic per selezionare la scheda specifica, e un oggetto FrameLayout che visualizza il contenuto di quella pagina.
L'elemento individuale sono tipicamente controllata utilizzando questo oggetto contenitore, piuttosto che impostando valori sugli elementi secondari stessi.
TabWidget
visualizza un elenco di etichette di tabulazione che rappresentano ogni pagina nella raccolta delle schede del genitore. L'oggetto contenitore per questo widget è TabHost.
Quando un utente seleziona una scheda, questo oggetto invia un messaggio al contenitore, TabHost, a dire per cambiare la pagina di visualizzazione. Il TabHost contenitore viene utilizzata per aggiungere etichette, aggiungere il gestore di callback, e gestire i callback.
in modo da regolare il layout come segue -
<?xml version="1.0" encoding="utf-8"?>
<TabHost xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@android:id/tabhost"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<LinearLayout
android:id="@+id/linearLayout1"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<FrameLayout
android:id="@android:id/tabcontent"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight="1" >
</FrameLayout>
<TabWidget
android:id="@android:id/tabs"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="-3dip"
android:layout_weight="0" >
</TabWidget>
</LinearLayout>
</TabHost>
Gli esempi di Android per il salvataggio!
http://developer.android.com/resources/tutorials /views/hello-tabwidget.html
Proprio di swap tabcontent e schede in res / layout / main.xml:
<LinearLayout
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:padding="5dp">
<FrameLayout
android:id="@android:id/tabcontent"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:padding="5dp" />
<TabWidget
android:id="@android:id/tabs"
android:layout_width="fill_parent"
android:layout_height="wrap_content" />
</LinearLayout>
Controllare il seguente link
Ci sono due modi per visualizzare schede nella parte inferiore di un'attività scheda.
1) Uso di layout relativa 2) Uso di attributo layout_weight
http: //justkumar.blogspot. com / 2011/09 / schede-at-bottom-of-tabactivity-by.html
Controlla questo
<TabHost xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:id="@android:id/tabhost">
<LinearLayout android:id="@+id/LinearLayout01"
android:orientation="vertical"
android:layout_height="fill_parent"
android:layout_width="fill_parent">
<FrameLayout
android:id="@android:id/tabcontent"
android:layout_height="fill_parent"
android:layout_width="fill_parent">
<TabWidget
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:layout_gravity="bottom"
android:id="@android:id/tabs">
</TabWidget>
</FrameLayout>
</LinearLayout>
questo è il codice per la scheda di fondo
<TabWidget
android:layout_width="fill_parent"
android:layout_height="60dp"
android:layout_gravity="bottom"
android:background="#0000"
android:id="@android:id/tabs"
/>
"android:layout_gravity="bottom"