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???

È stato utile?

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" 
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top