Autore Topic: layout con bottoni sopra e sotto  (Letto 1625 volte)

Offline frecciak

  • Utente normale
  • ***
  • Post: 231
  • Respect: +16
    • Mostra profilo
  • Dispositivo Android:
    galaxy s
  • Sistema operativo:
    windows 7
layout con bottoni sopra e sotto
« il: 09 Novembre 2011, 17:43:21 CET »
0
Problema 1:
devo creare un layout con 3 bottoni in alto (uno a sinistra, uno in centro e uno a destra).
sotto a questi bottoni ci deve essere una textview scrollabile.
e in fine, sotto alla text view devono esserci altri 2 bottoni (uno a destra e uno a sinistra).

il problema è che la textview a volte contiene testi molto corti (e in questo caso non ci sono problemi), e a volte invece contiene testi molto lunghi..in questo caso, mi spinge i bottoni in basso fuori dallo schermo e non è piu possibile visualizzarli.
ho provato varie soluzioni, ma non ne sono venuto a capo :(
mi sembrava una cosa semplicissima da fare, ma poi mi sono bloccato..probabilmente e' una schiocchezza, ma ormai ho il cervello fuso :D
potrei utilizzare dimensioni fisse per la textview, ma in questo caso perderei la compatibilità con tutti i tipi di schermi..
avete qualche consiglio?

qua sotto metto una delle tante prove fatte per far capire meglio :
Codice (XML): [Seleziona]
<?xml version="1.0" encoding="utf-8"?>

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
   android:id="@+id/baselayout"
   android:orientation="vertical"
   android:layout_width="fill_parent"
   android:layout_height="fill_parent"
   android:background="#d7d7d7">


       <FrameLayout
                android:id="@+id/FrameLayout1"
                android:layout_marginLeft="5sp"
                android:layout_marginRight="5sp"
                android:layout_height="wrap_content"
                android:layout_width="fill_parent"
                android:layout_marginTop="5sp"
                android:background="#d7d7d7">
   
           <ImageButton
           android:src="@drawable/indietro"
           android:layout_width="wrap_content"
           android:layout_height="wrap_content"
           android:id="@+id/btindietro"
           android:layout_gravity="left"
           android:layout_marginLeft="5sp">
            </ImageButton>

            <ImageButton
           android:src="@drawable/avanti"
           android:layout_width="wrap_content"
           android:layout_height="wrap_content"
           android:id="@+id/btavanti"
           android:layout_gravity="right">
            </ImageButton>
            <ImageButton
           android:layout_height="wrap_content"
           android:layout_width="wrap_content"
           android:id="@+id/btback"
           android:src="@drawable/back"
           android:layout_gravity="center">
            </ImageButton>
        </FrameLayout>

>
   <ScrollView
   android:layout_width="fill_parent"
   android:layout_height="wrap_content"
   android:background="#d7d7d7">
       <FrameLayout
                android:id="@+id/FrameLayout2"
                android:layout_marginLeft="5sp"
                android:layout_marginRight="5sp"
                android:layout_height="fill_parent"
                android:layout_width="fill_parent"
                android:layout_marginTop="5sp">
             <TextView
                            android:id="@+id/textbarzellette"
                                android:layout_width="fill_parent"
                                android:layout_height="fill_parent"
                                android:textSize="22sp"
                            android:textColor="#000000"
                            android:scrollbars="vertical"
                            android:background="#d7d7d7"
                android:layout_gravity="center_vertical"
                android:typeface="sans"
                android:textStyle="italic" >
                   </TextView>
       </FrameLayout>  
   </ScrollView>

        <FrameLayout
                android:id="@+id/FrameLayout2"
                android:layout_marginLeft="5sp"
                android:layout_marginRight="5sp"
                android:layout_height="wrap_content"
                android:layout_width="fill_parent"
                android:layout_marginTop="5sp"
                android:layout_marginBottom="5sp">
   
            <ImageButton
           android:layout_width="wrap_content"
           android:id="@+id/btemail"
           android:layout_height="wrap_content"
           android:src="@drawable/mail"
           android:layout_gravity="right">
            </ImageButton>
           
            <ImageButton
           android:layout_width="wrap_content"
           android:id="@+id/btsms"
           android:layout_height="wrap_content"
           android:src="@drawable/sms"
           android:layout_gravity="left">
            </ImageButton>        
 
     
         
         </FrameLayout>


       
       
</LinearLayout>


Problema 2:
come detto prima, nella textview ci sono alcuni testi lunghi e quindi si deve scrollare per leggerli..
ora mettiamo che il testo 1 e il testo 2 abbiano 30 righe ciascuno,se io scrollo fino alla riga 20del testo 1, e con la freccia passo al testo 2, il testo 2 mi appare con lo scroll alla riga 20(come lo avevo portato leggendo il testo 1)..come posso fare per fare in modo che ogni volta che cambia il testo, la textview mi mostri il testo nuovo partendo dalla prima riga? mi va bene sia una soluzione da xml che un comando da aggiungere all'activity.
questo e' il comando che uso ora per cambiare testo tramite le frecce:
Codice (Java): [Seleziona]
btavanti.setOnClickListener(new OnClickListener(){
       
        String prefissoc = ("bcar");
public void onClick(View v) {
        counter++;
        if (counter == 116) {
                finish();
        }
        else{
       
        String unione = ("bcar"+Integer.toString(counter));
        int linkav =  getResources().getIdentifier(unione, "string",getPackageName());
        textbarzellette.setText(getString(linkav));    
Se le risposte ti hanno aiutato, metti un ..a te non costa nulla, ma a chi ti ha aiutato fa molto piacere riceverlo!!

Offline frecciak

  • Utente normale
  • ***
  • Post: 231
  • Respect: +16
    • Mostra profilo
  • Dispositivo Android:
    galaxy s
  • Sistema operativo:
    windows 7
Re:layout con bottoni sopra e sotto
« Risposta #1 il: 09 Novembre 2011, 21:45:29 CET »
0
per far capire meglio quello che intendo fare nel Problema 1, allego questa immagine che riporta esattamente quello che intendo:
Se le risposte ti hanno aiutato, metti un ..a te non costa nulla, ma a chi ti ha aiutato fa molto piacere riceverlo!!

Offline frecciak

  • Utente normale
  • ***
  • Post: 231
  • Respect: +16
    • Mostra profilo
  • Dispositivo Android:
    galaxy s
  • Sistema operativo:
    windows 7
Re:layout con bottoni sopra e sotto
« Risposta #2 il: 12 Novembre 2011, 00:18:24 CET »
0
aiuto raga :(
son 2 giorni che provo e riprovo..e cerco in rete, ma senza risultati..
ho risolto il problema 2 con questa riga:
Codice (Java): [Seleziona]
textbarzellette.scrollTo(1, 1);
ma il layout proprio non mi riesce senza usare un relative layout :(
possibile che non esiste un modo per mettere dei bottoni in basso senza che vengano buttati fuori dallo schermo quando il testo è molto lungo?
mi basterebbe anche che il testo scorra sotto i bottoni, in modo che i bottoni siano sempre li in basso, ma in primo piano..
Se le risposte ti hanno aiutato, metti un ..a te non costa nulla, ma a chi ti ha aiutato fa molto piacere riceverlo!!

Zate

  • Visitatore
Re:layout con bottoni sopra e sotto
« Risposta #3 il: 12 Novembre 2011, 10:29:57 CET »
+2
Non capisco perchè non potresti usare i relative layout... Penso che usarli sia l'unico modo.
Così dovrebbe funzionare:
Codice (XML): [Seleziona]
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
   android:layout_width="match_parent"
   android:layout_height="match_parent"
   android:orientation="vertical" >

    <RelativeLayout
       android:id="@+id/relativeLayout1"
       android:layout_width="match_parent"
       android:layout_height="50dp"
       android:orientation="vertical" >

        <Button
           android:id="@+id/button1"
           android:layout_width="wrap_content"
           android:layout_height="wrap_content"
           android:text="Button" />

        <Button
           android:id="@+id/button2"
           android:layout_width="wrap_content"
           android:layout_height="wrap_content"
           android:layout_alignParentTop="true"
           android:layout_centerHorizontal="true"
           android:text="Button" />

        <Button
           android:id="@+id/button3"
           android:layout_width="wrap_content"
           android:layout_height="wrap_content"
           android:layout_alignParentRight="true"
           android:layout_alignParentTop="true"
           android:text="Button" />
    </RelativeLayout>


    <ScrollView
       android:layout_width="match_parent"
       android:layout_height="match_parent"
       android:layout_above="@+id/relativeLayout2"
       android:layout_below="@+id/relativeLayout1" >

        <TextView
           android:id="@+id/textView1"
           android:layout_width="match_parent"
           android:layout_height="match_parent"
           android:text="TextView" />
    </ScrollView>

    <RelativeLayout
       android:id="@+id/relativeLayout2"
       android:layout_width="match_parent"
       android:layout_height="50dp"
       android:layout_alignParentBottom="true">

        <Button
           android:id="@+id/button4"
           android:layout_width="wrap_content"
           android:layout_height="wrap_content"
           android:layout_alignParentBottom="true"
           android:layout_alignParentLeft="true"
           android:text="Button" />

        <Button
           android:id="@+id/button5"
           android:layout_width="wrap_content"
           android:layout_height="wrap_content"
           android:layout_alignParentBottom="true"
           android:layout_alignParentRight="true"
           android:text="Button" />
       
    </RelativeLayout>

</RelativeLayout>

Se non capisci qualcosa chiedi pure ;)

Offline frecciak

  • Utente normale
  • ***
  • Post: 231
  • Respect: +16
    • Mostra profilo
  • Dispositivo Android:
    galaxy s
  • Sistema operativo:
    windows 7
Re:layout con bottoni sopra e sotto
« Risposta #4 il: 12 Novembre 2011, 13:00:46 CET »
0
grazie mille zate,
non volevo usare i relative layout per il problema della compatibilità con i vari tipi di schermi e densità..
sono ancora un novellino e certe cose non mi sono molto chiare..ma ho letto praticamente ovunque che è sconsigliato usare i relative layout.
eppure anche a me per un layout di questo tipo il relative layout sembra l'unica soluzione :(
Se le risposte ti hanno aiutato, metti un ..a te non costa nulla, ma a chi ti ha aiutato fa molto piacere riceverlo!!

Offline Ricky`

  • Amministratore
  • Utente storico
  • *****
  • Post: 3489
  • Respect: +506
    • Github
    • Google+
    • rciovati
    • Mostra profilo
Re:layout con bottoni sopra e sotto
« Risposta #5 il: 12 Novembre 2011, 13:08:35 CET »
0
non volevo usare i relative layout per il problema della compatibilità con i vari tipi di schermi e densità..

Che problemi?

Zate

  • Visitatore
Re:layout con bottoni sopra e sotto
« Risposta #6 il: 12 Novembre 2011, 14:28:35 CET »
0
px
Pixels - pixel effetivi dello schermo.

in
Inches - basati sulla dimensione effettiva dello schermo.

mm
Millimeters - basati sulla dimensione effettiva dello schermo.

pt
Points - 1/72 di un inch, basati sulla dimensione effettiva dello schermo.

dp
Density-independent Pixels - Basati sulla densità dello schermo. Relativi ad uno schermo di 160 dpi, quindi 1 dp corrisponde a 1 px su uno schermo di 160 dpi. Il rapporto tra dp e px cambierà a seconda della densità dello schermo, ma non sarà necessariamente direttamente proporzionale (il compilatore accetterà sia "dip" che "dp")

sp
Scale-independent Pixels - come i dp, ma cambiano a seconda della dimensione del font scelta dall'utente. Raccomandati quando specifichi le dimensioni del font così verranno sistemati a seconda della densità e della dimensione dei font scelta dall'utente.


Se non vuoi problemi riguardo la compatibilità con le varie risoluzioni ecc., usa dp o sp e non troverai problemi, è invece sconsigliato usare px se si vuole rendere l'applicazione disponibile per una maggiore varietà di schermi. Non c'è assolutamente nessun problema particolare dei relative layout (per quanto ne so) riguardo alla compatibilità con le diverse risoluzioni e densità.

Offline frecciak

  • Utente normale
  • ***
  • Post: 231
  • Respect: +16
    • Mostra profilo
  • Dispositivo Android:
    galaxy s
  • Sistema operativo:
    windows 7
Re:layout con bottoni sopra e sotto
« Risposta #7 il: 12 Novembre 2011, 15:09:53 CET »
0
grazie mille ragazzi..
probabilmente ho interpretato male quello che avevo letto riguardo ai relative layout..il mio inglese è molto scarso, e penso di aver tradotto male qualche spiegazione :D
ora e' tutto piu chiaro e con i relative layout anche piu semplice ^^
grazie mille ancora
Se le risposte ti hanno aiutato, metti un ..a te non costa nulla, ma a chi ti ha aiutato fa molto piacere riceverlo!!

Zate

  • Visitatore
R: layout con bottoni sopra e sotto
« Risposta #8 il: 12 Novembre 2011, 16:33:16 CET »
0
Di niente ;)