Tại sao dòng này cần trong tệp bố trí xml?
xmlns:android="http://schemas.android.com/apk/res/android"
Tại sao dòng này cần trong tệp bố trí xml?
xmlns:android="http://schemas.android.com/apk/res/android"
Câu trả lời:
Trong XML, xmlns tuyên bố một Không gian tên. Trong thực tế, khi bạn làm:
<LinearLayout android:id>
</LinearLayout>
Thay vì gọi android:id
, xml sẽ sử dụng http://schemas.android.com/apk/res/android:id để trở thành duy nhất. Nói chung trang này không tồn tại (đó là URI, không phải URL), nhưng đôi khi nó là URL giải thích không gian tên được sử dụng.
Không gian tên có khá nhiều cách sử dụng giống như tên gói trong ứng dụng Java.
Đây là một lời giải thích.
Mã định danh tài nguyên đồng nhất (URI)
Mã định danh tài nguyên đồng nhất (URI) là một chuỗi các ký tự xác định tài nguyên Internet.
URI phổ biến nhất là Bộ định vị tài nguyên đồng nhất (URL) xác định địa chỉ tên miền Internet. Một loại URI không phổ biến khác là Tên tài nguyên chung (URN).
Trong ví dụ của chúng tôi, chúng tôi sẽ chỉ sử dụng URL.
android:layout_width
thay vì chỉ layout_width
?
Để hiểu tại sao xmlns:android=“http://schemas.android.com/apk/res/android”
phải là người đầu tiên trong tệp xml bố cục Chúng ta sẽ hiểu các thành phần bằng cách sử dụng một ví dụ
Sample
::
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/container" >
</FrameLayout>
Chỉ số tài nguyên thống nhất (URI) :
Ví dụ: http://schemas.android.com/apk/res/android:id
là URI ở đây
xmlns:android
mô tả không gian tên android.textview
widget của riêng mình với các tính năng khác so với Android textview
, không gian tên android giúp phân biệt giữa textview
widget tùy chỉnh và textview
widget Android
của chúng taxmlns đề cập đến không gian tên XML
Khi sử dụng tiền tố trong XML, phải xác định không gian tên gọi cho tiền tố. Không gian tên được xác định bởi thuộc tính xmlns trong thẻ bắt đầu của một phần tử. Khai báo không gian tên có cú pháp sau. xmlns: tiền tố = "URI".
Ghi chú : URI không gian tên không được trình phân tích cú pháp sử dụng để tra cứu thông tin.
Mục đích là để cung cấp cho không gian tên một tên duy nhất. Tuy nhiên, thường các công ty sử dụng không gian tên làm con trỏ đến trang web chứa thông tin không gian tên.
Đây chỉ là khai báo không gian tên XML. Chúng tôi sử dụng Không gian tên này để chỉ định rằng các thuộc tính được liệt kê bên dưới, thuộc về Android. Do đó, họ bắt đầu với " android: "
Bạn thực sự có thể tạo các thuộc tính tùy chỉnh của riêng bạn. Vì vậy, để ngăn chặn xung đột tên trong đó 2 thuộc tính được đặt tên giống nhau, nhưng hoạt động khác nhau, chúng tôi thêm tiền tố " android: " để biểu thị rằng đây là các thuộc tính Android.
Do đó, khai báo Không gian tên này phải được bao gồm trong thẻ mở của chế độ xem gốc của tệp XML của bạn.
xmlns: android Xác định không gian tên Android. Thuộc tính này phải luôn được đặt thành "http://schemas.android.com/apk/res/android".
tham khảo http://developer.android.com/guide/topics/manifest/manifest-element.html
Để đưa vào nhiệm kỳ của giáo dân:
không có xmlns: android =, http://schemas.android.com/apk/res/android, các thẻ liên quan đến android sẽ không được nhận ra trong tài liệu xml của bố cục của chúng tôi.
Trong XML, tên phần tử được xác định bởi nhà phát triển. Điều này thường dẫn đến xung đột khi cố gắng trộn các tài liệu XML từ các ứng dụng XML khác nhau. Người dùng hoặc ứng dụng XML sẽ không biết cách xử lý những khác biệt này. Xung đột tên trong XML có thể dễ dàng tránh được bằng cách sử dụng tiền tố tên. Khi sử dụng tiền tố trong XML, phải xác định không gian tên cho tiền tố. Không gian tên có thể được xác định bởi thuộc tính xmlns trong thẻ bắt đầu của một phần tử. Khai báo không gian tên có cú pháp sau. xmlns: tiền tố = "URI".
xmlns:android="http://schemas.android.com/apk/res/android"
Đây là hình thức của xmlns: android = "@ + / id". Bây giờ để giới thiệu nó, chúng tôi sử dụng ví dụ
android:layout_width="wrap_content"
android:text="Hello World!"
Một xmlns khác là
xmlns:app="http://schemas.android.com/apk/res-auto"
ở dạng xmlns: app = "@ + / id" và việc sử dụng nó được đưa ra dưới đây
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
xmlns: android Đây là thẻ bắt đầu để xác định không gian tên Android trong Android. Đây là quy ước standerd được xác định bởi nhà phát triển google google. khi bạn đang sử dụng và bố trí mặc định hoặc theo yêu cầu, thì phải sử dụng không gian tên này.
Xác định không gian tên Android. Thuộc tính này phải luôn được đặt thành " http://schemas.android.com/apk/res/android ".
Từ các <manifes>
tài liệu yếu tố .
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns : là không gian tên xml và URL: " http://schemas.android.com/apk/res/android " không là gì ngoài
XSD là [định nghĩa lược đồ XML]: được sử dụng xác định quy tắc cho tệp XML.
Thí dụ :
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="4dp"
android:hint="User Name"
/>
</LinearLayout>
Hãy để tôi giải thích các loại quy tắc? .
Loại quy tắc như vậy được định nghĩa trong XML XSD: " http://schemas.android.com/apk/res/android "
hơi muộn nhưng tôi hy vọng điều này sẽ giúp bạn
Đó là một khai báo không gian tên XML để chỉ định rằng các thuộc tính nằm trong nhóm khung nhìn mà nó được giảm tốc có liên quan đến Android.