Domanda

Ciao amici ho impostato il mio layout attraverso TabLayout all'interno LinearLayout ma ancora il mio tasto, alla fine, non potevano essere impostato correttamente come TabLayout divide tutti i campi in numero di colonne in modo chiunque può aiuto come impostare 2 layout in un file XML mezzi tutti i campi nella TabLayout e rimasti entrambi i pulsanti Login e registe nel layout lineare partecipanti ore qualche altro modo che possano impostare correttamente.

Grazie in anticipo.

Layout

Nome utente! EditTextBox

Password! EditTextBox

Login! Registrati

Tasto! Pulsante

Voglio il mio layout al precedente formato così ho usato TabLaout ma in quel caso sta causando vista di mio tasto così come si sta allungando un pulsante che altro uno come EditText è più grande di TextView

 <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:orientation="vertical"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        >
    <TextView
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:gravity="center_horizontal"
    android:textSize="26sp"
    android:text="@string/login_text"/>
    <TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:orientation="vertical"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
    >
    <TableRow>
    <TextView  
        android:layout_width="120px"  
        android:text="User name"
        />
    <EditText
        android:id="@+id/txtUserName"
        android:singleLine="true"
        android:maxLength="20"
        android:width="195px"
    />
    </TableRow>
    <TableRow>
    <TextView  
        android:layout_width="120px"  
        android:text="Password"
        />
    <EditText
        android:id="@+id/txtPassword"
        android:width="195px"
        android:maxLength="20"
        android:singleLine="true"
        android:password="true"
    />
    </TableRow>
    <TableRow>
            <TextView />
            <CheckBox android:id="@+id/chkRememberPassword"
                android:layout_width="fill_parent" 
                android:layout_height="wrap_content"
                android:text="Remember Password"
                />   
        </TableRow>
        <TableRow>
        <Button 
                android:id="@+id/buttonRegister" 
                android:text="Register" 
                android:layout_width="124px"
                android:layout_height="wrap_content"
                android:layout_below="@+id/chkRememberPassword"
                android:layout_alignRight="@+id/chkRememberPassword"
                />
        <Button 
            android:id="@+id/buttonSignIn" 
            android:text="Log In" 
            android:layout_width="124px"
            android:layout_height="wrap_content"
            android:layout_below="@+id/chkRememberPassword"
            android:layout_alignLeft="@+id/chkRememberPassword"
            />        
    </TableRow>

    <TextView  
    android:id="@+id/statusError"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
     />
    </TableLayout>
    </LinearLayout>
È stato utile?

Soluzione

Vi suggerisco di utilizzare wrap_content in TableLayout e allora si può avere i pulsanti in LinearLayout

<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
>

Altri suggerimenti

La sua non è possibile impostare più di un layout in un singolo file XML ... E per la stessa ragione di Android ha layout, layout del paesaggio, ecc tipo di sistema di cartella ..

Che cosa si può fare è, come spiegato da 100rabh ... Fai il layout universale applicando le impostazioni di layout e genitore di riempimento relativi ...

In caso contrario, come ho spiegato è necessario per rendere i file di layout 2 XML e posizionare il layout per il paesaggio nella cartella layout paesaggio così principio della disposizione verrà automaticamente impostato secondo l'orientamento del telefono ...

Spero che questo aiuti u ...

È necessario creare 2 file XML:

  1. Uno nella cartella layout normale
  2. Un secondo in un res/layout-land per definire il layout per l'orientamento orizzontale. Avrai bisogno di creare la cartella res/layout-land se non esiste già.
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top