Düzen kaynağı
Koleksiyonlar ile düzeninizi koruyun İçeriği tercihlerinize göre kaydedin ve kategorilere ayırın.
Düzen kaynağı, Activity
veya bileşenlerine ayıralım.
- dosya konumu:
res/layout/filename.xml
Dosya adı, kaynak kimliği olarak kullanılır. - derlenen kaynak veri türü:
- Kaynak işaretçisini bir
View
(veya alt sınıf) kaynağına yönlendirin - kaynak referansı:
- . Java'da:
R.layout.filename
XML'de: @[package:]layout/filename
- söz dizimi:
-
<?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>
Not: Kök öğe, bir ViewGroup
, View
veya <merge>
öğesi olabilir, ancak yalnızca bir kök öğe olmalı ve bu öğe, android
değerine sahip xmlns:android
özelliğini içermelidir ad alanını kullanın.
- öğeler:
-
<ViewGroup>
- Diğer
View
öğelerinin kapsayıcısıdır. Pek çok her biri farklı ViewGroup
nesne ekleyebilirsiniz. Bunların her biri alt öğelerin düzenini farklı şekillerde belirtin. Farklı türde ViewGroup
nesne şunları içeriyor: LinearLayout
, RelativeLayout
ve FrameLayout
. Herhangi bir ViewGroup
türevinin olduğunu varsaymayın iç içe görünümleri kabul eder. Bazı görünüm grupları ve bunların dönüşüm oranını belirleyen AdapterView
sınıfının uygulamalarıdır. sadece Adapter
içindeki alt öğeleridir.
Özellikler:
android:id
- Kaynak Kimliği. Öğe için benzersiz bir kaynak adı. ile ilgili bilgileri kullanmanızı öneririz.
ViewGroup
Daha fazla android:id değeri bölümüne bakın. android:layout_height
- Boyut veya anahtar kelime. Zorunludur. Grubun yüksekliği boyut değeri (veya boyut kaynağı) veya bir anahtar kelime (
"match_parent"
veya "wrap_content"
). Daha fazla bilgi için android:layout_height ve android:layout_width bölümüne ekleyin. android:layout_width
- Boyut veya anahtar kelime. Zorunludur. Grubun genişliği boyut değeri (veya boyut kaynağı) veya bir anahtar kelime (
"match_parent"
veya "wrap_content"
). Daha fazla bilgi için android:layout_height ve android:layout_width bölümüne ekleyin.
ViewGroup
temel sınıf daha fazla özelliği destekler ve çok daha fazlası, ViewGroup
Mevcut tüm özelliklere ilişkin bir referans için ViewGroup
sınıfı için ilgili referans belgelerine bakın. örneğin LinearLayout
XML özellikleri hakkında daha fazla bilgi edinin.
<View>
- Genellikle widget olarak adlandırılan bağımsız bir kullanıcı arayüzü bileşeni. Farklı
View
nesne türü şunları içerir: TextView
, Button
ve CheckBox
. Özellikler:
android:id
- Kaynak Kimliği. Öğe için kullanabileceğiniz benzersiz bir kaynak adı başvurunuzda
View
ile ilgili referans edinin. Daha fazla android:id değeri bölümüne bakın. android:layout_height
- Boyut veya anahtar kelime. Zorunludur. Öğenin yüksekliği, bir boyut değeri (veya boyut kaynağı) veya bir anahtar kelime (
"match_parent"
veya "wrap_content"
). Daha fazla bilgi için android:layout_height ve android:layout_width bölümüne ekleyin. android:layout_width
- Boyut veya anahtar kelime. Zorunludur. Öğenin genişliği, bir boyut değeri (veya boyut kaynağı) veya bir anahtar kelime (
"match_parent"
veya "wrap_content"
). Daha fazla bilgi için android:layout_height ve android:layout_width bölümüne ekleyin.
View
temel sınıf daha fazla özelliği destekler ve çok daha fazlası, View
Daha fazla bilgi için Düzenler başlıklı makaleyi okuyun. Örneğin, tüm kullanılabilir özelliklerin bir referansı, İlgili referans belgeleri (ör. TextView
XML özellikleri) inceleyin.
<requestFocus>
- Bir
View
nesnesini temsil eden herhangi bir öğe bu boş öğeyi içerebilir. Bu, üst öğesinin ilk odağının ekrana gelmesini sağlar. Bunlardan yalnızca birini öğe olması gerekir. <include>
- Bu düzene bir düzen dosyası ekler.
Özellikler:
layout
- Düzen kaynağı. Zorunludur. Düzene referans verme gösterir.
android:id
- Kaynak Kimliği. Dahil edilen düzendeki kök görünümüne verilen kimliği geçersiz kılar.
android:layout_height
- Boyut veya anahtar kelime. dahil edilen düzen. Yalnızca
android:layout_width
de belirtilmişse geçerlidir. android:layout_width
- Boyut veya anahtar kelime. dahil edilen düzen. Yalnızca
android:layout_height
de belirtilmişse geçerlidir.
<include>
içine sizin için uygun olan diğer tüm düzen özelliklerini desteklenen düzendeki kök öğe tarafından desteklenir ve kök öğedir.
Dikkat: Düzen özelliklerini geçersiz kılmak için <include>
etiketi için her ikisini de geçersiz kılmanız gerekir Şu işlem için android:layout_height
ve android:layout_width
: diğer düzen özelliklerinin geçerli olmasını sağlayın.
Düzen eklemenin bir başka yolu da ViewStub
kullanmaktır: basit bir bir görünüm oluşturabilirsiniz. Bunu yaptığınızda, android:layout
özelliği tarafından tanımlanan düzen dosyası. ViewStub
kullanımı hakkında daha fazla bilgi için şu bölümü okuyun: Yükleme Görüntüleme sayısı (seç-izle video).
<merge>
- Düzen hiyerarşisinde çizilmeyen alternatif bir kök öğe. Bunu bir kök öğe, bu düzenin bir düzene yerleştirildiğini bildiğinizde yararlıdır öğesini, alt öğelerini içerecek uygun üst
View
öğesini zaten içeren <merge>
öğesi. Bu, özellikle bu düzeni dahil etmeyi planladığınızda yararlıdır. <include>
ve Bu düzen farklı bir ViewGroup
kapsayıcısı gerektirmez. Daha fazla Düzenleri <include> ile yeniden kullanma hakkında bilgi edinin.
android:id değeri
Kimlik değeri için genellikle aşağıdaki örnekte gösterildiği gibi şu söz dizimi formunu kullanırsınız: "@+id/name"
. İlgili içeriği oluşturmak için kullanılan artı simgesi +
, bunun yeni bir kaynak kimliği olduğunu belirtir ve aapt
aracı yeni bir kaynak tam sayısı (mevcut değilse R.java
sınıfında)
<TextView android:id="@+id/nameTextbox"/>
nameTextbox
adı artık bu öğeye eklenmiş bir kaynak kimliğidir. Ardından kimliğin Java'da ilişkilendirilen TextView
bölümüne bakın:
Kotlin
val textView: TextView? = findViewById(R.id.nameTextbox)
Java
TextView textView = findViewById(R.id.nameTextbox);
Bu kod, TextView
nesnesini döndürür.
Ancak önceden bir kimlik kaynağı tanımladıysanız ve bu kaynak henüz tanımlanmamışsa önceden kullanılıyorsa o kimliği hariç tutarak bu kimliği bir View
öğesine uygulayabilirsiniz. android:id
değerinde artı simgesi.
android:layout_height ve android:layout_width
Yükseklik ve genişlik değerleri, boyut Android (px, dp, sp, pt, in, mm) tarafından desteklenen birimler:
Değer | Açıklama |
match_parent | Boyutu, üst öğeyle eşleşecek şekilde ayarlar. API düzeyi 8'de fill_parent öğesini kullanımdan kaldırın. |
wrap_content | Boyutu yalnızca bu öğenin içeriğine sığdırmak için gereken boyuta ayarlar. |
Özel görünüm öğeleri
Özel View
ve ViewGroup
oluşturabilirsiniz öğelerini düzenleyebilir ve bunları, standart bir düzenle aynı şekilde düzeninize uygulayabilirsiniz. öğesine dokunun. XML öğesinde desteklenen özellikleri de belirtebilirsiniz. Daha fazla bilgi için Özel görünüm bileşenleri oluşturma bölümünü inceleyin.
- örnek:
- XML dosyası
res/layout/main_activity.xml
itibarıyla kaydedildi: <?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>
Bu uygulama kodu, Activity
için düzeni onCreate()
yöntemi:
-
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); }
- ayrıca bkz.:
-
Bu sayfadaki içerik ve kod örnekleri, İçerik Lisansı sayfasında açıklanan lisanslara tabidir. Java ve OpenJDK, Oracle ve/veya satış ortaklarının tescilli ticari markasıdır.
Son güncelleme tarihi: 2025-07-27 UTC.
[[["Anlaması kolay","easyToUnderstand","thumb-up"],["Sorunumu çözdü","solvedMyProblem","thumb-up"],["Diğer","otherUp","thumb-up"]],[["İhtiyacım olan bilgiler yok","missingTheInformationINeed","thumb-down"],["Çok karmaşık / çok fazla adım var","tooComplicatedTooManySteps","thumb-down"],["Güncel değil","outOfDate","thumb-down"],["Çeviri sorunu","translationIssue","thumb-down"],["Örnek veya kod sorunu","samplesCodeIssue","thumb-down"],["Diğer","otherDown","thumb-down"]],["Son güncelleme tarihi: 2025-07-27 UTC."],[],[]]