Domanda

Ho visto i riferimenti a essere in grado di specificare due file di layout XML separati per un'attività, uno per ritratto e uno per il Paesaggio. Io non sono stato a trovare tutte le informazioni su come fare questo però. Come faccio a specificare per ogni attività che file XML viene è layout verticale, e che è il layout Paesaggio?

E 'anche possibile specificare diversi layout per schermi di dimensioni diverse? Se sì, come è questo fatto?

È stato utile?

Soluzione

Crea un layout-land di directory e mettere la versione paesaggio del file XML di layout in quella directory.

Altri suggerimenti

Non vi resta che metterla sotto cartelle separate con nomi diversi a seconda dell'orientamento e della risoluzione, il dispositivo selezionerà automaticamente quello giusto per le sue impostazioni dello schermo

Più informazioni qui:

http://developer.android.com/guide/practices/screens_support.html

voce "qualificazioni directory delle risorse per le dimensioni dello schermo e la densità"

Per gli amanti del mouse dico tasto destro del mouse sulla cartella delle risorse e Add new resource file, e dalle qualificazioni disponibili seleziona le orientation:

entrare descrizione dell'immagine qui


Ma ancora è possibile farlo manualmente per esempio, aggiungendo la sottocartella "Layout-terra" per

"Your-Project-directory \ app \ src \ Main \ res"

Da allora tutti i file layout.xml in questo sotto-cartella funziona solo per la modalità orizzontale automaticamente .

Usa "Layout-port" per la modalità portrait.

Solo un promemoria:

Rimuovi orientation da attributo android:configChanges per l'attività nel file manifest xml se è stato definito che:

android:configChanges="orientation|screenLayout|screenSize"

Crea un nuovo layout-land directory, quindi creare file di xml con lo stesso nome in layout-land come era directory layout e allineare lì i contenuti per la modalità Paesaggio.

Si noti che id di contenuti in entrambi xml è lo stesso.

In alternativa, utilizzare questo:

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

  <LinearLayout android:orientation="vertical"
                android:layout_width="fill_parent"
                android:layout_height="fill_parent">

     <!-- Add your UI elements inside the inner most linear layout -->

  </LinearLayout>
</ScrollView>

Credo che il modo più semplice nelle ultime versioni di Android è andando modalità di un XML (non testo) al design.

Quindi, dal menu, selezionare l'opzione - Crea Paesaggio Variation. Questo creerà un xml paesaggio senza alcun problema in pochi secondi. L'ultima versione di Android Studio consente di creare una visione del paesaggio subito.

entrare descrizione dell'immagine qui

Spero che questo funziona per voi.

L'ultima riga in basso è un esempio per l'applicazione di due quantificatori: del paesaggio e la più piccola larghezza dello schermo (600dp). Aggiornare 600dp con quelle che ti servono.

res/layout/main_activity.xml                # For handsets
res/layout-land/main_activity.xml           # For handsets in landscape
res/layout-sw600dp/main_activity.xml        # For 7” tablets
res/layout-sw600dp-land/main_activity.xml   # For 7” tablets in landscape

È possibile che questo vale anche per dimens così

res/values/dimens.xml                # For handsets
res/values-land/dimens.xml           # For handsets in landscape
res/values-sw600dp/dimens.xml        # For 7” tablets
res/values-sw600dp-land/dimens.xml   # For 7” tablets in landscape

Un utile metriche dei dispositivi: https://material.io/tools/devices/

  1. Fare clic destro cartella res,
  2. Nuovo -> File Android Resource
  3. in qualificazioni disponibili, selezionare Orientamento,
  4. aggiungere alla qualificazione Scelto
  5. in Orientamento dello schermo, selezionare Orizzontale
  6. Premere OK

Utilizzo di Android 3.4.1 Studio, non è più crea cartella layout-land . Si creerà una cartella e mettere i file di layout due insieme.

entrare descrizione dell'immagine qui

Il modo più veloce per Studio Android 3.x.x

1.Go alla scheda di progettazione del layout di attività

2.At parte superiore è necessario premere il tasto di orientamento per anteprima, c'è un opzione per creare un layout del paesaggio (verifica immagine), una nuova cartella verrà creata come file di layout XML per quel particolare orientamento

entrare descrizione dell'immagine qui

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top