Autore Topic: Margini bottoni centrati in LinearLayout  (Letto 903 volte)

Offline cadupper

  • Utente junior
  • **
  • Post: 81
  • Respect: 0
    • cadupper
    • Mostra profilo
  • Dispositivo Android:
    HTC Magic Tim (32A)
  • Play Store ID:
    cadupper
  • Sistema operativo:
    Ubuntu 10.04
Margini bottoni centrati in LinearLayout
« il: 17 Luglio 2011, 11:33:04 CEST »
0
Ciao a tutti!
L'interfaccia della mia activity è fatta così:
Ai piedi della UI c'è un LinearLayout dove ci stanno 2 pulsanti..
Gli ho inseriti così:
Codice (XML): [Seleziona]
<LinearLayout
                        android:id="@+id/linearLayout1"
                        android:layout_weight="2"
                        android:background="@android:color/white"
                        android:layout_height="wrap_content"
                        android:layout_width="match_parent">

                        <Button
                                android:text="Events"
                                android:id="@+id/bu_events"
                                android:layout_weight="5"
                                android:layout_height="50dp"
                                android:layout_width="fill_parent"

                                android:layout_marginTop="6dp"
                                android:layout_marginBottom="24dp"
                                android:layout_marginLeft="6dp"
                                android:layout_marginRight="3dp">
                        </Button>

                        <Button
                                android:text="Add new location"
                                android:id="@+id/bu_addLocation"
                                android:layout_weight="5"
                                android:layout_height="50dp"
                                android:layout_width="fill_parent"
                                android:layout_marginTop="6dp"
                                android:layout_marginBottom="24dp"
                                android:layout_marginLeft="3dp"
                                android:layout_marginRight="6dp">
                        </Button>
                </LinearLayout>

In particolare questo è il codice xml di uno dei bottoni:
Codice (XML): [Seleziona]
android:layout_marginTop="6dp"
android:layout_marginBottom="24dp"
android:layout_marginLeft="3dp"
android:layout_marginRight="6dp"
Come mai affinche riesca ad avere il Button centrato devo mettere

android:layout_marginTop="6dp"
android:layout_marginBottom="24dp"

e non
android:layout_marginTop="6dp"
android:layout_marginBottom="6dp"

??? ciao!


« Ultima modifica: 17 Luglio 2011, 11:35:53 CEST da cadupper »

Offline teskio

  • Moderatore globale
  • Utente normale
  • *****
  • Post: 387
  • Respect: +118
    • Github
    • Google+
    • Mostra profilo
    • Skullab
  • Dispositivo Android:
    Cubot GT99 / SurfTab Ventos 10.1
  • Play Store ID:
    Skullab Software
  • Sistema operativo:
    windows 7 / ubuntu 12.04
Re:Margini bottoni centrati in LinearLayout
« Risposta #1 il: 17 Luglio 2011, 14:20:29 CEST »
0
Bhè è un po' difficile rispondere a questa domanda  :-P, dipende anche dallo schermo del device con cui fai i test...oltretutto definire i margini di un elemento non ne specifica necessariamente la posizione ;-). Questo perchè, anche se è vero che i margini espressi in dp si adatteranno ad ogni densità dello schermo, la larghezza del contenitore (LinearLayout) è definità come "grande quanto il padre"  :-P mentre la sua altezza è definta come "quel che basta per il contenuto" ...Non so se mi sono spiegato, ma quello che voglio dire è che la definizione delle dimensioni degli elementi è fatta in modo da adattarsi allo schermo che li visualizzerà. :-o
Perchè non definisci il padding per il Layout contenitore invece di specificare i margini dei Button ?
Le strade per "disegnare" un Layout sono molte, dipende da cosa vuoi ottenere.

Offline cadupper

  • Utente junior
  • **
  • Post: 81
  • Respect: 0
    • cadupper
    • Mostra profilo
  • Dispositivo Android:
    HTC Magic Tim (32A)
  • Play Store ID:
    cadupper
  • Sistema operativo:
    Ubuntu 10.04
Re:Margini bottoni centrati in LinearLayout
« Risposta #2 il: 17 Luglio 2011, 14:57:52 CEST »
0
Bhè è un po' difficile rispondere a questa domanda  :-P, dipende anche dallo schermo del device con cui fai i test...oltretutto definire i margini di un elemento non ne specifica necessariamente la posizione ;-). Questo perchè, anche se è vero che i margini espressi in dp si adatteranno ad ogni densità dello schermo, la larghezza del contenitore (LinearLayout) è definità come "grande quanto il padre"  :-P mentre la sua altezza è definta come "quel che basta per il contenuto" ...Non so se mi sono spiegato, ma quello che voglio dire è che la definizione delle dimensioni degli elementi è fatta in modo da adattarsi allo schermo che li visualizzerà. :-o
Perchè non definisci il padding per il Layout contenitore invece di specificare i margini dei Button ?
Le strade per "disegnare" un Layout sono molte, dipende da cosa vuoi ottenere.
Io vorrei solo ottenere dei bottoni su una barra di colore diverso sul fondo della ui, centrati.
Come funziona il padding per il layout?

Offline teskio

  • Moderatore globale
  • Utente normale
  • *****
  • Post: 387
  • Respect: +118
    • Github
    • Google+
    • Mostra profilo
    • Skullab
  • Dispositivo Android:
    Cubot GT99 / SurfTab Ventos 10.1
  • Play Store ID:
    Skullab Software
  • Sistema operativo:
    windows 7 / ubuntu 12.04
Re:Margini bottoni centrati in LinearLayout
« Risposta #3 il: 17 Luglio 2011, 15:06:54 CEST »
0
La definizione dei layout tramite XML ricalca un po' la pratica usata nei CSS usati nel web design. Il padding è la distanza tra il bordo di un elemento e il suo contenuto (margine interno), il margin è la distanza tra il bordo di un elemento e gli elementi intorno ad esso(margine esterno).Comunque sono nozioni facilmente reperibili con San Google O:-)