See also
Ресурс розташування визначає архітектуру для UI в Activity або компоненті UI.
- РОЗТАШУВАННЯ ФАЙЛУ:
res/layout/filename.xml
Ім’я файлу буде використано як ID ресурсу.- СКОМПІЛЬОВАНИЙ ТИП ДАНИХ РЕСУРСУ:
- Вказівник на
View(або підклас) ресурсу. - ПОСИЛАННЯ НА РЕСУРС:
- В Java:
R.layout.filename
В XML:@[package:]layout/filename - СИНТАКСИС:
-
<?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" | "fill_parent" | "wrap_content"]
android:layout_width=["dimension" | "fill_parent" | "wrap_content"]
[ViewGroup-specific attributes] >
<View
android:id="@[+][package:]id/resource_name"
android:layout_height=["dimension" | "fill_parent" | "wrap_content"]
android:layout_width=["dimension" | "fill_parent" | "wrap_content"]
[View-specific attributes] >
<requestFocus/>
</View>
<ViewGroup >
<View />
</ViewGroup>
<include layout="@layout/layout_resource"/>
</ViewGroup>Зауваження: Кореневий елемент може бути або
ViewGroup,Viewабо<merge>елемент, але має бути лише один кореневий елемент, і він мусить містити атрибутxmlns:androidз простору іменandroid. - ЕЛЕМЕНТИ:
-
Значення для
android:idДля значення ID вам загалом треба використовувати цей синтаксис:
"@+id/name". Символ ,+, вказує на те, що це новий ресурсний ID, та інструментaaptбуде створювати нове ціле значення для ресурсу в класіR.java, якщо воно ще не існує. Наприклад:<TextView android:id="@+id/nameTextbox"/>
Ім’я
nameTextboxтепер є ресурсним ID, доданим для цього елементу. Тепер ви можете посилатись наTextView, до якого ID є асоційьованим в Java:findViewById(R.id.nameTextbox);
Код повертає об’єкт
TextView.Однак, якщо ви вже взначинили ID ресурсу (та він досі не задіяний), тоді ви можете застосувати цей ID до елементу
View, виключаючи символ плюса в значенніandroid:id.Значення для
android:layout_heightтаandroid:layout_width:Значення висоти та ширини можуть бути виражені з використанням любої з одиниць виміру, що підтримуються в Android (px, dp, sp, pt, in, mm), або за допомогою наступних ключоаих слів:
Значення Опис match_parentВстановлює розмір, що співпадає з таким для батьківського елементу. Додано в API Level 8 як заміщення для fill_parent.fill_parentВстановлює розмір, що співпадає з таким для батьківського елементу. wrap_contentВстановлює розмір в такий, що тільки необхідний для вмісту цього елелменту. Власні елементи View
Ви можете створити власний елемент
ViewабоViewGroup, та застосувати їх до ваших розташувань, так само, як стандартні елементи розташувань. Ви можете також задати атрибут, що підтримується в XML елементі. Щоб знати більше, дивіться інструкцію щодо створення Власних компонент. - ПРИКЛАД:
- XML файл, збережений як
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="fill_parent"
android:layout_height="fill_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>Цей код застосування буде завантажувати розташування для
Activityв методіonCreate(): -
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main_activity);
} - see also: