Membangun aplikasi yang dapat diakses dengan properti semantik
Semantik untuk aksesibilitas berkaitan dengan pengalaman membangun yang membuat aplikasi Anda inklusif bagi orang-orang yang menggunakan teknologi di berbagai lingkungan dan mendekati UI Anda dengan berbagai kebutuhan dan pengalaman. Dalam banyak situasi, persyaratan hukum untuk aksesibilitas dapat memberikan impetus bagi pengembang untuk mengatasi masalah aksesibilitas. Terlepas dari itu, disarankan untuk membangun aplikasi inklusif dan dapat diakses sehingga aplikasi Anda menjangkau audiens terbesar yang mungkin.
Panduan Aksesibilitas Konten Web (WCAG) adalah standar aksesibilitas global dan tolok ukur hukum untuk web dan seluler. Panduan ini menjelaskan berbagai cara di mana aplikasi dapat dibuat lebih dapat dirasakan, dapat dioperasikan, dimengerti, dan kuat, untuk semua.
Banyak kebutuhan aksesibilitas pengguna terpenuhi oleh produk teknologi bantuan yang diinstal oleh pengguna atau oleh alat dan pengaturan yang disediakan oleh sistem operasi. Ini termasuk fungsionalitas seperti pembaca layar, pembesaran layar, dan pengaturan kontras tinggi.
Pembaca layar biasanya memberikan deskripsi auditori kontrol yang ditampilkan di layar. Deskripsi ini membantu pengguna menavigasi melalui aplikasi dan memberikan referensi ke kontrol, seperti gambar, yang tidak memiliki input atau teks. Pembaca layar sering dikontrol melalui gerakan pada layar sentuh, trackpad, atau keyboard. Untuk informasi tentang mengaktifkan pembaca layar, lihat Mengaktifkan pembaca layar.
Sistem operasi memiliki pembaca layar mereka sendiri dengan perilaku dan konfigurasi unik mereka sendiri. Misalnya, sebagian besar pembaca layar membaca teks yang terkait dengan kontrol saat menerima fokus, memungkinkan pengguna untuk mengorientasikan diri mereka saat mereka menavigasi melalui aplikasi. Namun, beberapa pembaca layar juga dapat membaca seluruh antarmuka pengguna aplikasi saat halaman muncul, yang memungkinkan pengguna untuk menerima semua konten informasi halaman yang tersedia sebelum mencoba menavigasinya.
Kebanyakan pembaca layar akan otomatis membaca teks apa pun yang terkait dengan kontrol yang menerima fokus aksesibilitas. Ini berarti bahwa kontrol, seperti Label atau Button, yang memiliki Text
kumpulan properti akan dapat diakses oleh pengguna. Namun, Image, ImageButton, ActivityIndicator, dan lainnya mungkin tidak berada di pohon aksesibilitas karena tidak ada teks yang terkait dengannya.
.NET Multi-platform App UI (.NET MAUI) mendukung dua pendekatan untuk menyediakan akses ke pengalaman aksesibilitas platform yang mendasarinya. Properti semantik adalah pendekatan .NET MAUI untuk menyediakan nilai aksesibilitas dalam aplikasi, dan merupakan pendekatan yang direkomendasikan. Properti automasi adalah pendekatan Xamarin.Forms untuk menyediakan nilai aksesibilitas dalam aplikasi, dan telah digantikan oleh properti semantik. Dalam kedua kasus, urutan aksesibilitas default kontrol adalah urutan yang sama di mana mereka tercantum di XAML atau ditambahkan ke tata letak. Namun, tata letak yang berbeda mungkin memiliki faktor tambahan yang memengaruhi urutan aksesibilitas. Misalnya, urutan StackLayout aksesibilitas juga didasarkan pada orientasinya, dan urutan Grid aksesibilitas didasarkan pada susunan baris dan kolomnya. Untuk informasi selengkapnya tentang pengurutan konten, lihat Pengurutan Konten yang Bermakna di blog Xamarin.
Catatan
WebView Saat menampilkan situs web yang dapat diakses, situs web juga akan dapat diakses di aplikasi .NET MAUI. Sebaliknya, ketika WebView menampilkan situs web yang tidak dapat diakses, situs web tersebut tidak akan dapat diakses di aplikasi .NET MAUI.
Properti semantik
Properti semantik digunakan untuk menentukan informasi tentang kontrol mana yang harus menerima fokus aksesibilitas dan teks mana yang harus dibaca dengan keras kepada pengguna. Properti semantik adalah properti terlampir yang dapat ditambahkan ke elemen apa pun untuk mengatur API aksesibilitas platform yang mendasar.
Penting
Properti semantik tidak mencoba memaksa perilaku yang setara di setiap platform. Sebaliknya, mereka mengandalkan pengalaman aksesibilitas yang disediakan oleh setiap platform.
Kelas SemanticProperties menentukan properti terlampir berikut:
Description
, dari jenisstring
, yang mewakili deskripsi yang akan dibaca dengan keras oleh pembaca layar. Untuk informasi selengkapnya, lihat Deskripsi.Hint
, dari jenisstring
, yang miripDescription
dengan , tetapi menyediakan konteks tambahan seperti tujuan kontrol. Untuk informasi selengkapnya, lihat Petunjuk.HeadingLevel
, dari jenis SemanticHeadingLevel, yang memungkinkan elemen ditandai sebagai judul untuk mengatur UI dan membuatnya lebih mudah untuk menavigasi. Untuk informasi selengkapnya, lihat Tingkat judul.
Properti terlampir ini mengatur nilai aksesibilitas platform sehingga pembaca layar dapat berbicara tentang elemen . Untuk informasi selengkapnya tentang properti terlampir, lihat Properti terlampir.
Deskripsi
Properti Description
terlampir mewakili pendek, deskriptif string
yang digunakan pembaca layar untuk mengumumkan elemen. Properti ini harus diatur untuk elemen yang memiliki arti yang penting untuk memahami konten atau berinteraksi dengan antarmuka pengguna. Pengaturan properti ini dapat dicapai di XAML:
<Image Source="dotnet_bot.png"
SemanticProperties.Description="Cute dot net bot waving hi to you!" />
Atau, dapat diatur dalam C#:
Image image = new Image { Source = "dotnet_bot.png" };
SemanticProperties.SetDescription(image, "Cute dot net bot waving hi to you!");
Selain itu, metode ini SetValue juga dapat digunakan untuk mengatur Description
properti terlampir:
image.SetValue(SemanticProperties.DescriptionProperty, "Cute dot net bot waving hi to you!");
Informasi aksesibilitas untuk elemen juga dapat didefinisikan pada elemen lain. Misalnya, di Label samping dapat Switch digunakan untuk menjelaskan apa yang diwakili Switch . Ini dapat dicapai dalam XAML sebagai berikut:
<Label x:Name="label"
Text="Enable dark mode: " />
<Switch SemanticProperties.Description="{Binding Source={x:Reference label} Path=Text}" />
Atau, dapat diatur dalam C# sebagai berikut:
Label label = new Label
{
Text = "Enable dark mode: "
};
Switch mySwitch = new Switch();
SemanticProperties.SetDescription(mySwitch, label.Text);
Peringatan
- Hindari mengatur
Description
properti terlampir pada Label. Ini akan menghentikan properti yangText
diucapkan oleh pembaca layar. Ini karena teks visual idealnya harus cocok dengan teks yang dibacakan oleh pembaca layar. - Hindari mengatur
Description
properti terlampir pada atau EditorEntry di Android. Melakukannya akan menghentikan tindakan Talkback yang berfungsi. Sebagai gantinya Placeholder , gunakan properti atauHint
properti terlampir. - Di iOS, jika Anda mengatur
Description
properti pada kontrol apa pun yang memiliki anak-anak, pembaca layar tidak akan dapat menjangkau anak-anak. Ini karena iOS tidak menyediakan fitur aksesibilitas yang memungkinkan navigasi dari elemen induk ke dalam elemen turunan.
Petunjuk
Properti Hint
terlampir mewakili string
yang menyediakan konteks tambahan ke Description
properti terlampir, seperti tujuan kontrol. Pengaturan properti ini dapat dicapai di XAML:
<Image Source="like.png"
SemanticProperties.Description="Like"
SemanticProperties.Hint="Like this post." />
Atau, dapat diatur dalam C#:
Image image = new Image { Source = "like.png" };
SemanticProperties.SetDescription(image, "Like");
SemanticProperties.SetHint(image, "Like this post.");
Selain itu, metode ini SetValue juga dapat digunakan untuk mengatur Hint
properti terlampir:
image.SetValue(SemanticProperties.HintProperty, "Like this post.");
Di Android, properti ini berulah sedikit berbeda tergantung pada kontrol yang dilampirkan. Misalnya, untuk kontrol tanpa nilai teks, seperti Switch dan CheckBox, kontrol akan menampilkan petunjuk dengan kontrol. Namun, untuk kontrol dengan nilai teks, petunjuk tidak ditampilkan dan dibaca setelah nilai teks.
Peringatan
Properti Hint
berkonflik dengan Entry.Placeholder
properti di Android, yang keduanya memetakan ke properti platform yang sama. Oleh karena itu, mengatur nilai yang berbeda Hint
ke Entry.Placeholder
nilai tidak disarankan.
Tingkat judul
Properti HeadingLevel
terlampir memungkinkan elemen ditandai sebagai judul untuk mengatur UI dan mempermudah navigasi. Beberapa pembaca layar memungkinkan pengguna untuk melompat di antara judul dengan cepat.
Judul memiliki tingkat dari 1 hingga 9, dan diwakili oleh SemanticHeadingLevel enumerasi, yang mendefinisikan None
, dan Level1
melalui Level9
anggota.
Penting
Sementara Windows menawarkan 9 tingkat judul, Android dan iOS hanya menawarkan satu judul. Oleh karena itu, ketika HeadingLevel
diatur pada Windows, ia memetakan ke tingkat judul yang benar. Namun, ketika diatur di Android dan iOS, ia memetakan ke satu tingkat judul.
Contoh berikut menunjukkan pengaturan properti terlampir ini:
<Label Text="Get started with .NET MAUI"
SemanticProperties.HeadingLevel="Level1" />
<Label Text="Paragraphs of text go here." />
<Label Text="Installation"
SemanticProperties.HeadingLevel="Level2" />
<Label Text="Paragraphs of text go here." />
<Label Text="Build your first app"
SemanticProperties.HeadingLevel="Level3" />
<Label Text="Paragraphs of text go here." />
<Label Text="Publish your app"
SemanticProperties.HeadingLevel="Level4" />
<Label Text="Paragraphs of text go here." />
Atau, dapat diatur dalam C#:
Label label1 = new Label { Text = "Get started with .NET MAUI" };
Label label2 = new Label { Text = "Paragraphs of text go here." };
Label label3 = new Label { Text = "Installation" };
Label label4 = new Label { Text = "Paragraphs of text go here." };
Label label5 = new Label { Text = "Build your first app" };
Label label6 = new Label { Text = "Paragraphs of text go here." };
Label label7 = new Label { Text = "Publish your app" };
Label label8 = new Label { Text = "Paragraphs of text go here." };
SemanticProperties.SetHeadingLevel(label1, SemanticHeadingLevel.Level1);
SemanticProperties.SetHeadingLevel(label3, SemanticHeadingLevel.Level1);
SemanticProperties.SetHeadingLevel(label5, SemanticHeadingLevel.Level1);
SemanticProperties.SetHeadingLevel(label7, SemanticHeadingLevel.Level1);
Selain itu, metode ini SetValue juga dapat digunakan untuk mengatur HeadingLevel
properti terlampir:
label1.SetValue(SemanticProperties.HeadingLevelProperty, SemanticHeadingLevel.Level1);
Fokus semantik
Kontrol memiliki SetSemanticFocus metode ekstensi yang memaksa pembaca layar fokus ke elemen tertentu. Misalnya, mengingat Label fokus pembaca layar bernama label
, dapat dipaksa ke elemen dengan kode berikut:
label.SetSemanticFocus();
Pembaca layar semantik
.NET MAUI menyediakan antarmuka, yang dengannya ISemanticScreenReader Anda dapat menginstruksikan pembaca layar untuk mengumumkan teks kepada pengguna. Antarmuka diekspos melalui Default properti, dan tersedia di Microsoft.Maui.Accessibility namespace layanan.
Untuk menginstruksikan pembaca layar untuk mengumumkan teks, gunakan Announce metode , meneruskan string
argumen yang mewakili teks. Contoh berikut menunjukkan penggunaan metode ini:
SemanticScreenReader.Default.Announce("This is the announcement text.");
Batasan
Pembaca layar platform default harus diaktifkan agar teks dibaca dengan keras.
Properti otomatisasi
Properti automasi adalah properti terlampir yang dapat ditambahkan ke elemen apa pun untuk menunjukkan bagaimana elemen dilaporkan ke kerangka kerja aksesibilitas platform yang mendasar.
Kelas AutomationProperties menentukan properti terlampir berikut:
ExcludedWithChildren
, dari jenisbool?
, menentukan apakah elemen dan turunannya harus dikecualikan dari pohon aksesibilitas. Untuk informasi selengkapnya, lihat ExcludedWithChildren.IsInAccessibleTree
, dari jenisbool?
, menunjukkan apakah elemen tersedia di pohon aksesibilitas. Untuk informasi selengkapnya, lihat IsInAccessibleTree.Name
, dari jenisstring
, mewakili deskripsi singkat dari elemen yang berfungsi sebagai pengidentifikasi yang dapat diucapkan untuk elemen tersebut. Untuk informasi selengkapnya, lihat Nama.HelpText
, dari jenisstring
, mewakili deskripsi elemen yang lebih panjang, yang dapat dianggap sebagai teks tipsalat yang terkait dengan elemen . Untuk informasi selengkapnya, lihat HelpText.LabeledBy
, dari jenis VisualElement, yang memungkinkan elemen lain untuk menentukan informasi aksesibilitas untuk elemen saat ini. Untuk informasi selengkapnya, lihat LabeledBy.
Properti terlampir ini mengatur nilai aksesibilitas platform sehingga pembaca layar dapat berbicara tentang elemen . Untuk informasi selengkapnya tentang properti terlampir, lihat Properti terlampir.
Pembaca layar yang berbeda membaca nilai aksesibilitas yang berbeda. Oleh karena itu, saat menggunakan properti otomatisasi, disarankan agar pengujian aksesibilitas menyeluruh dilakukan pada setiap platform untuk memastikan pengalaman yang optimal.
Penting
Properti automasi adalah pendekatan Xamarin.Forms untuk menyediakan nilai aksesibilitas dalam aplikasi, dan telah digantikan oleh properti semantik. Untuk informasi selengkapnya tentang properti semantik, lihat Properti semantik.
DikecualikanWithChildren
Properti ExcludedWithChildren
terlampir, dari jenis bool?
, menentukan apakah elemen dan turunannya harus dikecualikan dari pohon aksesibilitas. Ini memungkinkan skenario seperti menampilkan tata letak lain AbsoluteLayout seperti StackLayout, dengan StackLayout yang dikecualikan dari pohon aksesibilitas saat tidak terlihat. Ini dapat digunakan dari XAML sebagai berikut:
<StackLayout AutomationProperties.ExcludedWithChildren="true">
...
</StackLayout>
Atau, dapat diatur dalam C# sebagai berikut:
StackLayout stackLayout = new StackLayout();
...
AutomationProperties.SetExcludedWithChildren(stackLayout, true);
Ketika properti terlampir ini diatur, .NET MAUI mengatur IsInAccessibleTree
properti terlampir ke false
pada elemen yang ditentukan dan turunannya.
IsInAccessibleTree
Peringatan
Properti terlampir ini biasanya harus tetap tidak diatur. Sebagian besar kontrol harus ada di pohon aksesibilitas, dan AutomationProperties.ExcludedWithChildren
properti terlampir dapat diatur dalam skenario di mana elemen dan anak-anaknya perlu dihapus dari pohon aksesibilitas.
Properti IsInAccessibleTree
terlampir, dari jenis bool?
, menentukan apakah elemen terlihat oleh pembaca layar. Ini harus diatur ke true
untuk menggunakan properti otomatisasi lainnya. Ini dapat dicapai dalam XAML sebagai berikut:
<Entry AutomationProperties.IsInAccessibleTree="true" />
Atau, dapat diatur dalam C# sebagai berikut:
Entry entry = new Entry();
AutomationProperties.SetIsInAccessibleTree(entry, true);
Peringatan
Di iOS, jika IsInAccessibleTree
properti berada true
di kontrol apa pun yang memiliki anak-anak, pembaca layar tidak akan dapat menjangkau anak-anak. Ini karena iOS tidak menyediakan fitur aksesibilitas yang memungkinkan navigasi dari elemen induk ke dalam elemen turunan.
Nama
Penting
Properti Name
terlampir telah tidak digunakan lagi di .NET 8. Sebagai gantinya Description
, gunakan properti terlampir.
Nilai Name
properti terlampir harus berupa string teks deskriptif pendek yang digunakan pembaca layar untuk mengumumkan elemen. Properti ini harus diatur untuk elemen yang memiliki arti yang penting untuk memahami konten atau berinteraksi dengan antarmuka pengguna. Ini dapat dicapai dalam XAML sebagai berikut:
<ActivityIndicator AutomationProperties.IsInAccessibleTree="true"
AutomationProperties.Name="Progress indicator" />
Atau, dapat diatur dalam C# sebagai berikut:
ActivityIndicator activityIndicator = new ActivityIndicator();
AutomationProperties.SetIsInAccessibleTree(activityIndicator, true);
AutomationProperties.SetName(activityIndicator, "Progress indicator");
HelpText
Penting
Properti HelpText
terlampir telah tidak digunakan lagi di .NET 8. Sebagai gantinya Hint
, gunakan properti terlampir.
Properti HelpText
terlampir harus diatur ke teks yang menjelaskan elemen antarmuka pengguna, dan dapat dianggap sebagai teks tipsalat yang terkait dengan elemen . Ini dapat dicapai dalam XAML sebagai berikut:
<Button Text="Toggle ActivityIndicator"
AutomationProperties.IsInAccessibleTree="true"
AutomationProperties.HelpText="Tap to toggle the activity indicator" />
Atau, dapat diatur dalam C# sebagai berikut:
Button button = new Button { Text = "Toggle ActivityIndicator" };
AutomationProperties.SetIsInAccessibleTree(button, true);
AutomationProperties.SetHelpText(button, "Tap to toggle the activity indicator");
Pada beberapa platform, untuk kontrol edit seperti Entry, HelpText
properti terkadang dapat dihilangkan dan diganti dengan teks tempat penampung. Misalnya, "Masukkan nama Anda di sini" adalah kandidat yang baik untuk Entry.Placeholder
properti yang menempatkan teks dalam kontrol sebelum input aktual pengguna.
LabeledBy
Penting
Properti LabeledBy
terlampir telah tidak digunakan lagi di .NET 8. Sebagai gantinya, gunakan pengikatan SemanticProperties.Description
. Untuk informasi selengkapnya, lihat SemanticProperties: Description.
Properti LabeledBy
terlampir memungkinkan elemen lain untuk menentukan informasi aksesibilitas untuk elemen saat ini. Misalnya, di Label samping dapat Entry digunakan untuk menjelaskan apa yang diwakili Entry . Ini dapat dicapai dalam XAML sebagai berikut:
<Label x:Name="label" Text="Enter your name: " />
<Entry AutomationProperties.IsInAccessibleTree="true"
AutomationProperties.LabeledBy="{x:Reference label}" />
Atau, dapat diatur dalam C# sebagai berikut:
Label label = new Label { Text = "Enter your name: " };
Entry entry = new Entry();
AutomationProperties.SetIsInAccessibleTree(entry, true);
AutomationProperties.SetLabeledBy(entry, label);
Penting
AutomationProperties.LabeledByProperty
tidak didukung di iOS.
Menguji aksesibilitas
Aplikasi MAUI .NET biasanya menargetkan beberapa platform, yang berarti menguji fitur aksesibilitas sesuai dengan platform. Ikuti tautan ini untuk mempelajari cara menguji aksesibilitas di setiap platform:
- Uji aksesibilitas aplikasi Anda di Android.
- Memverifikasi aksesibilitas aplikasi di iOS.
- Pengujian untuk aksesibilitas pada OS X
- Pengujian aksesibilitas di Windows.
Alat berikut dapat membantu pengujian aksesibilitas Anda:
- Insight Aksesibilitas untuk aplikasi Android dan Windows.
- Pemindai Aksesibilitas untuk aplikasi Android.
- Pemeriksa Aksesibilitas untuk aplikasi iOS dan macOS.
- Inspektur Tata Letak Android Studio untuk aplikasi Android.
- Xcode Lihat Debugger untuk aplikasi iOS dan macOS.
Namun, tidak ada alat ini yang dapat meniru pengalaman pengguna pembaca layar dengan sempurna, dan cara terbaik untuk menguji dan memecahkan masalah aplikasi Anda untuk aksesibilitas akan selalu secara manual di perangkat fisik dengan pembaca layar.
Mengaktifkan pembaca layar
Setiap platform memiliki pembaca layar default yang berbeda untuk menceritakan nilai aksesibilitas:
- Android memiliki TalkBack. Untuk informasi tentang mengaktifkan TalkBack, lihat Mengaktifkan TalkBack.
- iOS dan macOS memiliki VoiceOver. Untuk informasi tentang mengaktifkan VoiceOver, lihat Mengaktifkan VoiceOver.
- Windows memiliki Narator. Untuk informasi tentang mengaktifkan Narator, lihat Mengaktifkan Narator.
Aktifkan TalkBack
TalkBack adalah pembaca layar utama yang digunakan di Android. Cara mengaktifkannya tergantung pada produsen perangkat, versi Android, dan versi TalkBack. Namun, TalkBack biasanya dapat diaktifkan di perangkat Android Anda melalui pengaturan perangkat:
- Buka aplikasi Pengaturan.
- Pilih TalkBack Aksesibilitas>.
- Aktifkan Gunakan TalkBack .
- Pilih OK.
Catatan
Meskipun langkah-langkah ini berlaku untuk sebagian besar perangkat, Anda mungkin mengalami beberapa perbedaan.
Tutorial TalkBack terbuka secara otomatis saat pertama kali Anda mengaktifkan TalkBack.
Untuk metode alternatif mengaktifkan TalkBack, lihat Mengaktifkan atau menonaktifkan Talkback.
Aktifkan VoiceOver
VoiceOver adalah pembaca layar utama yang digunakan di iOS dan macOS. Di iOS, VoiceOver dapat diaktifkan sebagai berikut:
- Buka aplikasi Pengaturan.
- Pilih VoiceOver Aksesibilitas>.
- Aktifkan VoiceOver .
Tutorial VoiceOver dapat dibuka dengan memilih Praktik VoiceOver, setelah VoiceOver diaktifkan.
Untuk metode alternatif mengaktifkan VoiceOver, lihat Mengaktifkan dan mempraktikkan VoiceOver di i Telepon dan Menyalakan dan mempraktikkan VoiceOver di iPad.
Di macOS, VoiceOver dapat diaktifkan sebagai berikut:
- Buka Preferensi Sistem.
- Pilih VoiceOver Aksesibilitas>.
- Pilih Aktifkan VoiceOver.
- Pilih Gunakan VoiceOver.
Tutorial VoiceOver dapat dibuka dengan memilih Buka Pelatihan VoiceOver....
Untuk metode alternatif mengaktifkan VoiceOver, lihat Mengaktifkan atau menonaktifkan VoiceOver di Mac.
Aktifkan Narator
Narator adalah pembaca layar utama yang digunakan pada Windows. Narator dapat diaktifkan dengan menekan tombol + logo Windows Ctrl + Enter bersama-sama. Tombol ini dapat ditekan lagi untuk menghentikan Narator.
Untuk informasi selengkapnya tentang Narator, lihat Panduan lengkap untuk Narator.
Daftar periksa aksesibilitas
Ikuti tips ini untuk memastikan bahwa aplikasi MAUI .NET Anda dapat diakses oleh audiens seluas mungkin:
- Pastikan aplikasi Anda dapat dirasakan, dapat dioperasikan, dimengerti, dan kuat untuk semua dengan mengikuti Panduan Aksesibilitas Konten Web (WCAG). WCAG adalah standar aksesibilitas global dan tolok ukur hukum untuk web dan seluler. Untuk informasi selengkapnya, lihat Gambaran Umum Panduan Aksesibilitas Konten Web (WCAG).
- Pastikan antarmuka pengguna menjelaskan sendiri. Uji bahwa semua elemen antarmuka pengguna Anda dapat diakses pembaca layar. Tambahkan teks dan petunjuk deskriptif jika perlu.
- Pastikan bahwa gambar dan ikon memiliki deskripsi teks alternatif.
- Mendukung font besar dan kontras tinggi. Hindari dimensi kontrol hardcoding, dan lebih memilih tata letak yang mengubah ukuran untuk mengakomodasi ukuran font yang lebih besar. Uji skema warna dalam mode kontras tinggi untuk memastikan skema tersebut dapat dibaca.
- Desain pohon visual dengan mengingat navigasi. Gunakan kontrol tata letak yang sesuai sehingga menavigasi antar kontrol menggunakan metode input alternatif mengikuti alur logis yang sama seperti menggunakan sentuhan. Selain itu, kecualikan elemen yang tidak perlu dari pembaca layar (misalnya, gambar dekoratif atau label untuk bidang yang sudah dapat diakses).
- Jangan mengandalkan isti audio atau warna saja. Hindari situasi di mana satu-satunya indikasi kemajuan, penyelesaian, atau beberapa status lainnya adalah perubahan suara atau warna. Desain antarmuka pengguna untuk menyertakan isjin visual yang jelas, dengan suara dan warna hanya untuk penguatan, atau tambahkan indikator aksesibilitas tertentu. Saat memilih warna, cobalah untuk menghindari palet yang sulit dibedakan untuk pengguna dengan buta warna.
- Berikan keterangan untuk konten video dan skrip yang dapat dibaca untuk konten audio. Ini juga berguna untuk memberikan kontrol yang menyesuaikan kecepatan konten audio atau video, dan memastikan bahwa kontrol volume dan transportasi mudah ditemukan dan digunakan.
- Melokalisasi deskripsi aksesibilitas Anda saat aplikasi mendukung beberapa bahasa.
- Uji fitur aksesibilitas aplikasi Anda di setiap platform yang ditargetkannya. Untuk informasi selengkapnya, lihat Menguji aksesibilitas.
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk