Visualizzazione stampabile
-
TabHost e Layout
Salve a tutti!
Ho un problema con TabHost e TabWidget. Quello che vorrei ottenere è che il FrameLayout all'interno di un TabHost non occupi tutto lo display, perchè vorrei riservare dello spazio in basso dove inserire un pulsante che resti visibile quando navigo fra i diversi tab.
Ho provato ad inserive vari Layout fuori (e dentro) tabHost, ma il pulsante che metto non si vede mai.
Questo è il codice che ho ora:
codice HTML:
<?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="wrap_content">
<TabWidget
android:id="@android:id/tabs"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
/>
<FrameLayout
android:id="@android:id/tabcontent"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<ListView
android:id="@+id/friendsList"
android:layout_width="fill_parent"
android:layout_height="fill_parent"/>
<ListView
android:id="@+id/requestToMeList"
android:layout_width="fill_parent"
android:layout_height="fill_parent"/>
<ListView
android:id="@+id/requestFromMeList"
android:layout_width="fill_parent"
android:layout_height="fill_parent" />
</FrameLayout>
</TabHost>
e poi ho un Button
codice HTML:
<Button android:id="@+id/manageFriendsSearchButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Search Friends"
android:onClick="goToSearchFriendsActivity" />
e vorrei inseriro nel mio layout, in modo che si asempre visibile pur cambiando i tab.
-
Vedo troppi fill_parent :D
-
Ehehe, si hai ragione. Comunque ho appena risolto sistemando bene i LinearLayout...adesso stavo cercando di cambiare i colori di sfondo dei tab (se selezionati o meno) e la disposizione dei Selector nei tab (se sono troppo lunghi vengono troncati e iniziano a scorrere dopo un po' che li ho selezionati) ...devo utilizzare gli style per queste cose?
-
No non è necessario usare gli style, basta impostare il parametro android:background
Gli style servono quando molti elementi hanno gli stessi valori per gli stessi parametri. Esempio:
Per creare una textview con tutti questi attributi basta fare
-
Ok, questo penso (spero) di averlo capito. Quello che mi chiedevo, soprattutto, era come poter cambiare i colori dei tab. Nel senso, ora sto utilizzando di default il tema scuro, e il tab selezionato è di default di colore bianco, mentre quelli non selezionati sono grigi. Vorrei poter cambiare questi colori.
Seconda cosa: il testo dentro i tab (quindi dei selector), se non entra nel tab, viene troncato, ed inizia a scorrere per essere letto completamente solo quando si seleziona il tab. Vorrei invece poter rendere leggibile tutto il testo nel tab mandando a capo le parole invece di visualizzarlo tutto su un unica riga.
Mi sembra di capire, da internet ( :) ), che tutti questi problemi si risolvono con gli style o con i selector...o sbaglio?
-
Potresti postare gli xml interessati?
-
Ecco
http://img233.imageshack.us/img233/2...creenshot1.png
Forse mi sono spiegato male riguardo ai "tab". Quello che voglio fare è cambiare il colore di sfondo dell'etichetta (o handler, o non so come chiamarlo se non "tab" :D) quando è selezionato e quando non lo è (appunto di default è "selezionato = bianco" e "non selezionato = grigio"). Credo di aver scoperto che i tab non selezionati hanno un colore in realtà semi-trasparente, perchè cambiando colore allo sfondo di tutta l'activity, cambia anche il colore di questi ultimi.
-
Credo che vada usato uno dei metodi di questa classe: TabHost.TabSpec | Android Developers
o mi sbaglio? Purtroppo non ho mai lavorato con questo tipo di layout
-
io non riesco proprio a capire come fare un layout del genere! per esempio sto facendo un programma con una textview, 2 editText e 2 bottoni e vorrei che i due bottoni stessero sulla stessa riga, uno di fianco all'altro, invece di default se non imposto una tabella m li mette uno sotto l'altro :S sapreste dirmi come fare?=)