Bagikan melalui


Xamarin.Forms Perender Cepat

Secara tradisional, sebagian besar perender kontrol asli di Android terdiri dari dua tampilan:

  • Kontrol asli, seperti Button atau TextView.
  • Kontainer ViewGroup yang menangani beberapa pekerjaan tata letak, penanganan gerakan, dan tugas lainnya.

Namun, pendekatan ini memiliki implikasi performa dalam dua tampilan yang dibuat untuk setiap kontrol logis, yang menghasilkan pohon visual yang lebih kompleks yang membutuhkan lebih banyak memori, dan lebih banyak pemrosesan untuk dirender di layar.

Perender cepat mengurangi inflasi dan merender biaya Xamarin.Forms kontrol menjadi satu tampilan. Oleh karena itu, alih-alih membuat dua tampilan dan menambahkannya ke pohon tampilan, hanya satu yang dibuat. Ini meningkatkan performa dengan membuat lebih sedikit objek, yang pada gilirannya berarti pohon tampilan yang kurang kompleks, dan penggunaan memori yang lebih sedikit (yang juga menghasilkan jeda pengumpulan sampah yang lebih sedikit).

Perender cepat tersedia untuk kontrol berikut di Xamarin.Forms Android:

Secara fungsional, perender cepat ini tidak berbeda dengan penyaji warisan. Dari Xamarin.Forms 4.0 dan seterusnya, semua aplikasi yang menargetkan FormsAppCompatActivity akan menggunakan perender cepat ini secara default. Perender untuk semua kontrol baru, termasuk ImageButton dan CollectionView, gunakan pendekatan perender cepat.

Peningkatan performa saat menggunakan perender cepat akan bervariasi untuk setiap aplikasi, tergantung pada kompleksitas tata letak. Misalnya, peningkatan performa x2 dimungkinkan saat menggulir ribuan ListView baris data yang berisi, di mana sel di setiap baris terbuat dari kontrol yang menggunakan perender cepat, yang menghasilkan pengguliran yang terlihat lebih halus.

Catatan

Perender kustom dapat dibuat untuk perender cepat menggunakan pendekatan yang sama seperti yang digunakan untuk penyaji warisan. Untuk informasi selengkapnya, lihat Perender Kustom.

Kompatibilitas mundur

Perender cepat dapat ditimpa dengan pendekatan berikut:

  1. Mengaktifkan perender warisan dengan menambahkan baris kode berikut ke kelas Anda MainActivity sebelum memanggil Forms.Init:

    Forms.SetFlags("UseLegacyRenderers");
    
  2. Menggunakan perender kustom yang menargetkan perender warisan. Setiap perender kustom yang ada akan terus berfungsi dengan perender warisan.

  3. Menentukan yang berbeda View.Visual, seperti Material, yang menggunakan perender yang berbeda. Untuk informasi selengkapnya tentang Visual Material, lihat Xamarin.Forms Visual Material.