Xamarin.Forms Dasar-Dasar XAML

Download Sample Mengunduh sampel

EXtensible Application Markup Language (XAML) adalah bahasa berbasis XML yang dibuat oleh Microsoft sebagai alternatif untuk kode pemrograman untuk membuat instans dan menginisialisasi objek, dan mengatur objek tersebut dalam hierarki induk-anak. XAML telah disesuaikan dengan beberapa teknologi dalam kerangka kerja .NET, tetapi telah menemukan utilitas terbesarnya dalam menentukan tata letak antarmuka pengguna dalam Windows Presentation Foundation (WPF), Silverlight, Windows Runtime, dan Platform Windows Universal (UWP).

XAML memungkinkan pengembang untuk menentukan antarmuka pengguna dalam Xamarin.Forms aplikasi menggunakan markup daripada kode. XAML tidak pernah diperlukan dalam Xamarin.Forms program, tetapi seringkali lebih ringkas dan lebih koheren secara visual daripada kode yang setara, dan berpotensi dapat diprogram. XAML sangat cocok untuk digunakan dengan arsitektur aplikasi MVVM (Model-View-ViewModel) populer: XAML menentukan Tampilan yang ditautkan ke kode ViewModel melalui pengikatan data berbasis XAML.

Dalam file XAML, Xamarin.Forms pengembang dapat menentukan antarmuka pengguna menggunakan semua Xamarin.Forms tampilan, tata letak, dan halaman, serta kelas kustom. File XAML dapat dikompilasi atau disematkan dalam file yang dapat dieksekusi. Bagaimanapun, informasi XAML diurai pada waktu build untuk menemukan objek bernama, dan sekali lagi pada runtime untuk membuat instans dan menginisialisasi objek, dan untuk membuat tautan antara objek ini dan kode pemrograman.

XAML memiliki beberapa keunggulan dibandingkan kode yang setara:

  • XAML sering kali lebih succinct dan dapat dibaca daripada kode yang setara.
  • Hierarki induk-anak yang melekat dalam XML memungkinkan XAML untuk meniru dengan kejelasan visual yang lebih besar hierarki induk-anak dari objek antarmuka pengguna.
  • XAML dapat dengan mudah ditulis tangan oleh programmer, tetapi juga meminjamkan dirinya untuk menjadi alat dan dihasilkan oleh alat desain visual.

Ada juga kerugian, sebagian besar terkait dengan batasan yang intrinsik dengan bahasa markup:

  • XAML tidak boleh berisi kode. Semua penanganan aktivitas harus didefinisikan dalam file kode.
  • XAML tidak dapat berisi perulangan untuk pemrosesan berulang. (Namun, beberapa Xamarin.Forms objek visual—terutama ListView —dapat menghasilkan beberapa anak berdasarkan objek dalam koleksinya ItemsSource .)
  • XAML tidak dapat berisi pemrosesan kondisional (Namun, pengikatan data dapat mereferensikan pengikatan pengikatan berbasis kode yang secara efektif memungkinkan beberapa pemrosesan bersyarkat.)
  • XAML umumnya tidak dapat membuat instans kelas yang tidak menentukan konstruktor tanpa parameter. (Namun, terkadang ada cara untuk mengatasi pembatasan ini.)
  • XAML umumnya tidak dapat memanggil metode. (Sekali lagi, pembatasan ini terkadang dapat diatasi.)

Belum ada perancang visual untuk menghasilkan XAML dalam Xamarin.Forms aplikasi. Semua XAML harus ditulis tangan, tetapi Anda dapat menggunakan XAML Hot Reload di Visual Studio 2019 atau Visual Studio untuk Mac untuk melihat desain layar saat Mengeditnya. Bahkan pengembang dengan banyak pengalaman di XAML tahu bahwa eksperimen bermanfaat.

XAML pada dasarnya XML, tetapi XAML memiliki beberapa fitur sintaks yang unik. Yang paling penting adalah:

  • Elemen properti
  • Properti terlampir
  • Ekstensi markup

Fitur-fitur ini bukan ekstensi XML. XAML sepenuhnya legal XML. Tetapi fitur sintaks XAML ini menggunakan XML dengan cara yang unik. Mereka dibahas secara rinci dalam artikel di bawah ini, yang menyimpulkan dengan pengenalan menggunakan XAML untuk menerapkan MVVM.

Persyaratan

Artikel ini mengasumsikan keakraban kerja dengan Xamarin.Forms. Artikel ini juga mengasumsikan beberapa keakraban dengan XML, termasuk memahami penggunaan deklarasi namespace XML, dan elemen istilah, tag, dan atribut.

Saat Anda terbiasa dengan Xamarin.Forms dan XML, mulailah membaca Bagian 1. Memulai XAML.

Temukan video Xamarin lainnya di Channel 9 dan YouTube.