سعی کنید برنامه Android خود را برای همه، از جمله افرادی که نیازهای دسترسی دارند، قابل استفاده کنید.
افرادی که دچار اختلال بینایی، کوررنگی، اختلال شنوایی، نقص در مهارت، ناتوانی های شناختی و بسیاری از ناتوانی های دیگر هستند از دستگاه های اندرویدی استفاده می کنند. وقتی برنامه هایی را با در نظر گرفتن قابلیت دسترسی توسعه می دهید، تجربه کاربری را برای افرادی که نیازهای دسترسی دارند بهتر می کنید.
این صفحه دستورالعملهایی را برای اجرای عناصر کلیدی دسترسی ارائه میکند تا همه بتوانند راحتتر از برنامه شما استفاده کنند. برای راهنمایی عمیق تر در مورد نحوه دسترسی بیشتر به برنامه خود، به اصول بهبود دسترسی به برنامه مراجعه کنید.
افزایش دید متن
برای هر مجموعه ای از متن در برنامه شما، توصیه می کنیم کنتراست رنگ - یا تفاوت در روشنایی درک شده بین رنگ متن و رنگ پس زمینه پشت متن - بالاتر از یک آستانه خاص باشد. آستانه دقیق به اندازه فونت متن و اینکه آیا متن به صورت پررنگ ظاهر می شود بستگی دارد:
- اگر متن کوچکتر از 18pt است، یا اگر متن پررنگ و کوچکتر از 14pt است، نسبت کنتراست رنگ را حداقل روی 4.5:1 تنظیم کنید.
- برای تمام متن های دیگر، نسبت کنتراست رنگ را حداقل روی 3:1 تنظیم کنید.
تصویر زیر دو نمونه از کنتراست رنگ متن به پسزمینه را نشان میدهد:
برای بررسی کنتراست رنگ متن به پسزمینه در برنامهتان، از یک بررسیکننده کنتراست رنگ آنلاین یا برنامه Accessibility Scanner استفاده کنید.
از کنترل های بزرگ و ساده استفاده کنید
اگر مشاهده و ضربه زدن روی کنترلهای آن آسانتر باشد، استفاده از UI برنامه شما آسانتر است. توصیه میکنیم هر عنصر رابط کاربری تعاملی دارای یک ناحیه قابل تمرکز یا اندازه هدف لمسی با حداقل 48dpx48dp باشد. بزرگتر حتی بهتر است.
برای اینکه یک عنصر UI معین دارای اندازه هدف لمسی به اندازه کافی بزرگ باشد، شرایط زیر باید هر دو صادق باشند:
- مجموع مقادیر
android:paddingLeft
،android:minWidth
وandroid:paddingRight
بزرگتر یا مساوی 48dp است. - مجموع مقادیر
android:paddingTop
،android:minHeight
وandroid:paddingBottom
بزرگتر یا مساوی 48dp است.
مقادیر padding اجازه می دهد تا اندازه قابل مشاهده یک شی کمتر از 48dpx48dp باشد در حالی که هنوز اندازه هدف لمسی توصیه شده را دارد.
قطعه کد زیر عنصری را نشان می دهد که اندازه هدف لمسی توصیه شده را دارد:
<ImageButton ... android:paddingLeft="4dp" android:minWidth="40dp" android:paddingRight="4dp" android:paddingTop="8dp" android:minHeight="32dp" android:paddingBottom="8dp" />
هر عنصر UI را شرح دهید
برای هر عنصر رابط کاربری در برنامه خود، توضیحی را اضافه کنید که هدف آن عنصر را توضیح دهد. در بیشتر موارد، همانطور که در قطعه کد زیر نشان داده شده است، این توضیحات را در ویژگی contentDescription
عنصر قرار می دهید:
<!-- Use string resources for easier localization. --> <!-- The en-US value for the following string is "Inspect". --> <ImageView ... android:contentDescription="@string/inspect" />
هنگام افزودن توضیحات به عناصر رابط کاربری برنامه خود، بهترین شیوه های زیر را در نظر داشته باشید:
نوع عنصر رابط کاربری را در توضیحات محتوا درج نکنید. صفحه خوان ها به طور خودکار هم نوع و هم توضیحات عنصر را اعلام می کنند. برای مثال، اگر انتخاب یک دکمه باعث میشود که یک عمل «ارسال» در برنامه شما انجام شود، توضیح دکمه را
"Submit"
کنید، نه"Submit button"
.هر توصیف باید منحصر به فرد باشد. به این ترتیب، هنگامی که کاربران صفحهخوان با توضیحات مکرر عنصر مواجه میشوند، به درستی تشخیص میدهند که تمرکز روی عنصری است که قبلاً فوکوس داشته است. به طور خاص، هر آیتم در یک گروه view مانند
RecyclerView
باید توضیحات متفاوتی داشته باشد. هر توضیحی باید محتوایی را نشان دهد که برای یک مورد خاص منحصر به فرد است، مانند نام یک شهر در لیستی از مکانها.اگر
minSdkVersion
برنامه شما16
یا بالاتر است، میتوانید ویژگیandroid:importantForAccessibility
را برای عناصر گرافیکی که فقط برای جلوههای تزئینی استفاده میشوند، روی"no"
تنظیم کنید.
منابع اضافی
برای کسب اطلاعات بیشتر در مورد دسترسی بیشتر برنامه خود، به منابع اضافی زیر مراجعه کنید: