Bagikan melalui


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.

Sebagian besar pembaca layar akan secara 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.

Nota

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 jenis string, yang mewakili deskripsi yang akan dibaca dengan keras oleh pembaca layar. Untuk informasi selengkapnya, lihat Deskripsi.
  • Hint, dari jenis string, yang mirip dengan Description, tetapi menyediakan konteks tambahan seperti tujuan pengendalian. 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 teks singkat yang deskriptif string yang digunakan oleh pembaca layar untuk mengumumkan sebuah 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 SetValue ini juga dapat digunakan untuk mengatur properti Description terlampir:

image.SetValue(SemanticProperties.DescriptionProperty, "Cute dot net bot waving hi to you!");

Informasi aksesibilitas untuk elemen juga dapat didefinisikan pada elemen lain. Misalnya, sebuah Label di samping sebuah Switch dapat digunakan untuk menjelaskan apa yang dimaksudkan oleh Switch. Ini dapat dicapai dalam XAML sebagai berikut:

<Label x:Name="label"
       Text="Enable dark mode: " />
<Switch SemanticProperties.Description="{Binding x:DataType='Label', 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 Text diucapkan oleh pembaca layar. Ini karena teks visual idealnya harus cocok dengan teks yang dibacakan oleh pembaca layar.
  • Hindari mengatur properti terlampir Description pada Entry atau Editor di Android. Melakukannya akan membuat tindakan Talkback berhenti berfungsi. Sebagai gantinya, gunakan properti Placeholder atau properti terlampir Hint.
  • 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 SetValue ini juga dapat digunakan untuk mengatur properti Hint 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 bersama dengan kontrol. Namun, untuk kontrol dengan nilai teks, petunjuk tidak ditampilkan dan dibaca setelah nilai teks.

Peringatan

Properti Hint berkonflik dengan properti Entry.Placeholder di Android, yang dua-duanya memetakan ke platform properti yang sama. Oleh karena itu, mengatur nilai Hint yang berbeda dengan nilai Entry.Placeholder 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 dilambangkan oleh SemanticHeadingLevel enumerasi, yang mendefinisikan None, Level1 melalui anggota Level9.

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.Level2);
SemanticProperties.SetHeadingLevel(label5, SemanticHeadingLevel.Level3);
SemanticProperties.SetHeadingLevel(label7, SemanticHeadingLevel.Level4);

Selain itu, metode SetValue ini juga dapat digunakan untuk mengatur properti HeadingLevel terlampir:

label1.SetValue(SemanticProperties.HeadingLevelProperty, SemanticHeadingLevel.Level1);

Fokus semantik

Kontrol memiliki SetSemanticFocus metode ekstensi yang memaksa pembaca layar fokus ke elemen tertentu. Misalnya, diberikan sebuah Label yang bernama label, fokus pembaca layar bisa dipaksa ke elemen tersebut menggunakan kode berikut:

label.SetSemanticFocus();

Pembaca layar semantik

.NET MAUI menyediakan antarmuka ISemanticScreenReader, yang dapat Anda gunakan untuk menginstruksikan pembaca layar agar mengumumkan teks kepada pengguna. Antarmuka diekspos melalui properti Default, dan tersedia dalam namespace Microsoft.Maui.Accessibility.

Untuk menginstruksikan pembaca layar untuk mengumumkan teks, gunakan metode Announce dengan meneruskan argumen string yang mewakili teks. Contoh berikut menunjukkan penggunaan metode ini:

SemanticScreenReader.Default.Announce("This is the announcement text.");

Keterbatasan

Pembaca layar platform default harus diaktifkan agar teks dibacakan dengan suara keras.

Properti automasi

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 jenis bool?, menentukan apakah elemen dan turunannya harus dikecualikan dari pohon aksesibilitas. Untuk informasi selengkapnya, lihat ExcludedWithChildren.
  • IsInAccessibleTree, dari jenis bool?, menunjukkan apakah elemen tersedia di pohon aksesibilitas. Untuk informasi selengkapnya, lihat IsInAccessibleTree.
  • Name, dari jenis string, mewakili deskripsi singkat dari elemen yang berfungsi sebagai pengidentifikasi yang dapat diucapkan untuk elemen tersebut. Untuk informasi selengkapnya, lihat Nama.
  • HelpText, dari jenis string, 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.

Dikecualikan dengan Anak-anak

Properti ExcludedWithChildren terlampir, dari jenis bool?, menentukan apakah elemen dan turunannya harus dikecualikan dari pohon aksesibilitas. Ini memungkinkan skenario seperti menampilkan AbsoluteLayout di atas tata letak lain 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 menetapkan properti terlampir IsInAccessibleTree ke false pada elemen yang ditentukan dan anak-anaknya.

IsInAccessibleTree

Peringatan

Properti terlampir ini biasanya harus tetap tidak diatur. Sebagian besar kontrol harus ada di pohon aksesibilitas, dan AutomationProperties.ExcludedWithChildren properti lampiran ini dapat diatur dalam skenario di mana elemen dan turunannya 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, gunakan properti Description 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");

Teks Bantuan

Penting

Properti HelpText terlampir telah tidak digunakan lagi di .NET 8. Sebagai gantinya, gunakan properti Hint terlampir.

Properti HelpText terlampir harus diatur ke teks yang menjelaskan elemen antarmuka pengguna, dan dapat dianggap sebagai teks petunjuk alat yang terkait dengan elemen tersebut. 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, properti Entry untuk kontrol edit seperti HelpText kadang dapat dihilangkan dan diganti dengan teks placeholder. Misalnya, "Masukkan nama Anda di sini" adalah kandidat yang baik untuk Entry.Placeholder properti yang menempatkan teks dalam kontrol sebelum input aktual pengguna.

DiberiLabelOleh

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, sebuah Label di samping sebuah Entry dapat digunakan untuk menjelaskan apa yang dimaksudkan oleh 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:

Alat berikut dapat membantu pengujian aksesibilitas Anda:

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:

  1. Buka aplikasi Pengaturan .
  2. Pilih Aksesibilitas>TalkBack.
  3. Aktifkan Gunakan TalkBack .
  4. Pilih OK.

Nota

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:

  1. Buka aplikasi Pengaturan .
  2. Pilih Aksesibilitas>VoiceOver.
  3. Aktifkan VoiceOver .

Tutorial VoiceOver dapat dibuka dengan memilih Praktik VoiceOver, setelah VoiceOver diaktifkan.

Untuk metode alternatif mengaktifkan VoiceOver, lihat Mengaktifkan dan mempraktikkan VoiceOver di iPhone dan Menyalakan dan mempraktikkan VoiceOver di iPad.

Di macOS, VoiceOver dapat diaktifkan sebagai berikut:

  1. Buka Preferensi Sistem.
  2. Pilih Aksesibilitas>VoiceOver.
  3. Pilih Aktifkan VoiceOver.
  4. 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 WindowsCtrl + Enter bersama-sama. Tekan tombol ini 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 mengkode dimensi kontrol secara tetap, dan lebih memilih tata letak yang dapat menyesuaikan 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 mempertimbangkan 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 isyarat 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.