Risorsa layout
Mantieni tutto organizzato con le raccolte
Salva e classifica i contenuti in base alle tue preferenze.
Una risorsa di layout definisce l'architettura dell'interfaccia utente in un Activity o un
di una UI.
- percorso del file:
res/layout/filename.xml -
Il nome file viene utilizzato come ID risorsa.
- tipo di dati della risorsa compilato:
- Puntatore di risorsa a una risorsa
View (o sottoclasse)
- riferimento della risorsa:
-
In Java:
R.layout.filename
In XML: @[package:]layout/filename
- sintassi:
-
<?xml version="1.0" encoding="utf-8"?>
<ViewGroup
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@[+][package:]id/resource_name"
android:layout_height=["dimension" | "match_parent" | "wrap_content"]
android:layout_width=["dimension" | "match_parent" | "wrap_content"]
[ViewGroup-specific attributes] >
<View
android:id="@[+][package:]id/resource_name"
android:layout_height=["dimension" | "match_parent" | "wrap_content"]
android:layout_width=["dimension" | "match_parent" | "wrap_content"]
[View-specific attributes] >
<requestFocus/>
</View>
<ViewGroup >
<View />
</ViewGroup>
<include layout="@layout/layout_resource"/>
</ViewGroup>
Nota: l'elemento principale può essere un
ViewGroup, View o <merge>, ma possono esserci solo
un elemento radice e deve contenere l'attributo xmlns:android con android
come mostrato nell'esempio di sintassi precedente.
- elementi:
-
<ViewGroup>
- Un contenitore per altri elementi
View. Esistono molti
diversi tipi di oggetti ViewGroup, e ognuno ti consente
specificare il layout degli elementi secondari in vari modi. Diversi tipi di
ViewGroup oggetti includono LinearLayout,
RelativeLayout e FrameLayout.
Non dare per scontato che qualsiasi derivazione di ViewGroup
accetta viste nidificate. Alcuni gruppi di visualizzazioni
sono implementazioni della classe AdapterView, che determina
i suoi figli solo da un Adapter.
Attributi:
android:id
- ID risorsa. Un nome risorsa univoco per l'elemento, che puoi
per ottenere un riferimento a
ViewGroup dalla tua applicazione. Per ulteriori informazioni
informazioni, consulta la sezione Valore per android:id.
android:layout_height
- Dimensione o parola chiave. Obbligatorio. L'altezza del gruppo, espressa come
il valore della dimensione (o
risorsa dimensione) o una parola chiave
(
"match_parent" o "wrap_content"). Per ulteriori informazioni,
vedi Valori per android:layout_height e
nella sezione android:layout_width.
android:layout_width
- Dimensione o parola chiave. Obbligatorio. La larghezza del gruppo, espressa come
il valore della dimensione (o
risorsa dimensione) o una parola chiave
(
"match_parent" o "wrap_content"). Per ulteriori informazioni,
vedi Valori per android:layout_height e
nella sezione android:layout_width.
ViewGroup
supporta più attributi e molti altri sono supportati da ciascuna implementazione
ViewGroup. Per un riferimento a tutti gli attributi disponibili,
consulta la documentazione di riferimento corrispondente per la classe ViewGroup,
ad esempio, il file LinearLayout XML
personalizzati.
<View>
- Un singolo componente dell'interfaccia utente, generalmente denominato widget. Diverso
i tipi di oggetti
View includono TextView,
Button e CheckBox.
Attributi:
android:id
- ID risorsa. Un nome risorsa univoco per l'elemento, che puoi utilizzare per
ottenere un riferimento a
View dalla tua applicazione. Per ulteriori informazioni
informazioni, consulta la sezione Valore per android:id.
android:layout_height
- Dimensione o parola chiave. Obbligatorio. L'altezza dell'elemento, come
il valore di una dimensione (o
risorsa dimensione) o una parola chiave
(
"match_parent" o "wrap_content"). Per ulteriori informazioni,
vedi Valori per android:layout_height e
nella sezione android:layout_width.
android:layout_width
- Dimensione o parola chiave. Obbligatorio. La larghezza dell'elemento, come
il valore di una dimensione (o
risorsa dimensione) o una parola chiave
(
"match_parent" o "wrap_content"). Per ulteriori informazioni,
vedi Valori per android:layout_height e
nella sezione android:layout_width.
View
supporta più attributi e molti altri sono supportati da ciascuna implementazione
View. Per ulteriori informazioni, consulta la sezione Layout. Per
un riferimento a tutti gli attributi disponibili,
consulta la relativa documentazione di riferimento, ad esempio gli attributi XML di TextView.
<requestFocus>
- Qualsiasi elemento che rappresenta un oggetto
View può includere questo elemento vuoto,
che consente all'elemento principale di concentrarsi
sullo schermo. Puoi avere solo uno di questi
per file.
<include>
- Include un file di layout in questo layout.
Attributi:
layout
- Risorsa di layout. Obbligatorio. Riferimento a un layout
risorsa.
android:id
- ID risorsa. Sostituisce l'ID assegnato alla vista principale nel layout incluso.
android:layout_height
- Dimensione o parola chiave. Sostituisce l'altezza assegnata alla vista principale nella
layout incluso. In vigore solo se viene dichiarato anche
android:layout_width.
android:layout_width
- Dimensione o parola chiave. Sostituisce la larghezza assegnata alla vista principale nella
layout incluso. In vigore solo se viene dichiarato anche
android:layout_height.
Puoi includere qualsiasi altro attributo di layout in <include> che sia
supportati dall'elemento principale nel layout incluso e sostituiscono quelli definiti nei
principale.
Attenzione: se vuoi sostituire gli attributi di layout utilizzando
il tag <include>, devi sostituire entrambi
android:layout_height e android:layout_width in ordine per
altri attributi di layout.
Un altro modo per includere un layout è usare ViewStub, uno strumento leggero
che non occupa spazio di layout finché non viene gonfiata in modo esplicito. Quando lo fai, include una
file di layout definito dal relativo attributo android:layout. Per ulteriori informazioni sull'utilizzo di ViewStub, leggi Caricare
di visualizzazioni on demand.
<merge>
- Un elemento principale alternativo non tracciato nella gerarchia del layout. Usa questo come
l'elemento principale è utile quando sai che questo layout è inserito in un layout
che contiene già l'elemento
View principale appropriato per contenere gli elementi secondari dei
Elemento <merge>.
Ciò è particolarmente utile quando prevedi di includere questo layout
in un altro file di layout utilizzando <include> e
questo layout non richiede un contenitore ViewGroup diverso. Per ulteriori informazioni
informazioni sull'unione dei layout, leggi Riutilizzare i layout con <include>.
Valore per android:id
Per il valore ID, in genere viene utilizzato questo formato di sintassi: "@+id/name", come mostrato nell'esempio seguente. La
il simbolo più, +, indica che si tratta di un nuovo ID risorsa e lo strumento aapt crea
Un nuovo numero intero della risorsa nella classe R.java, se non esiste già.
<TextView android:id="@+id/nameTextbox"/>
Il nome nameTextbox è ora un ID risorsa associato a questo elemento. Puoi quindi
fai riferimento al TextView a cui l'ID è associato in Java:
Kotlin
val textView: TextView? = findViewById(R.id.nameTextbox)
Java
TextView textView = findViewById(R.id.nameTextbox);
Questo codice restituisce l'oggetto TextView.
Tuttavia, se hai già definito una risorsa ID, che non è
già utilizzato, puoi applicare questo ID a un elemento View escludendo
nel valore android:id.
Valori per android:layout_height e
android:layout_width
I valori di altezza e larghezza sono espressi utilizzando uno qualsiasi dei
dimensione
unità supportate da Android (px, dp, sp, pt, in, mm) o con le seguenti parole chiave:
| Valore | Descrizione |
match_parent |
Consente di impostare la dimensione in modo che corrisponda a quella dell'elemento principale. Aggiunto nel livello API 8 a
ritira fill_parent. |
wrap_content |
Imposta la dimensione solo sulla dimensione richiesta per adattarsi ai contenuti di questo elemento. |
Elementi di visualizzazione personalizzati
Puoi creare View e ViewGroup personalizzati
e applicarli al tuo layout come faresti con un layout standard
. Puoi anche specificare gli attributi supportati nell'elemento XML. Per ulteriori informazioni,
consulta Creare componenti vista personalizzati.
- esempio:
- File XML salvato alle ore
res/layout/main_activity.xml:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<TextView android:id="@+id/text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hello, I am a TextView" />
<Button android:id="@+id/button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hello, I am a Button" />
</LinearLayout>
Questo codice dell'applicazione carica il layout per un Activity in
Metodo onCreate():
-
Kotlin
public override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.main_activity)
}
Java
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main_activity);
}
- vedi anche:
-
I campioni di contenuti e codice in questa pagina sono soggetti alle licenze descritte nella Licenza per i contenuti. Java e OpenJDK sono marchi o marchi registrati di Oracle e/o delle sue società consociate.
Ultimo aggiornamento 2025-07-27 UTC.
[[["Facile da capire","easyToUnderstand","thumb-up"],["Il problema è stato risolto","solvedMyProblem","thumb-up"],["Altra","otherUp","thumb-up"]],[["Mancano le informazioni di cui ho bisogno","missingTheInformationINeed","thumb-down"],["Troppo complicato/troppi passaggi","tooComplicatedTooManySteps","thumb-down"],["Obsoleti","outOfDate","thumb-down"],["Problema di traduzione","translationIssue","thumb-down"],["Problema relativo a esempi/codice","samplesCodeIssue","thumb-down"],["Altra","otherDown","thumb-down"]],["Ultimo aggiornamento 2025-07-27 UTC."],[],[]]