آموزش های این وب سایت به صورت رایگان در دسترس است. اطلاعات بیشتر
بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]

هشدار contentDescription در استفاده از imageview

kazemian  9 سال پیش  9 سال پیش
0 0

سلام دوستان
من وقتی از imageview استفاده میکنم یک warning ظاهر میشه و میگه Missing contentDescription attribute on image
میخواستم بدونم مفهوم این پیغام چیه و contentDescription چه کاربردی برای ما داره

+1 0
سلام دوست عزیز این هشداری که به شما میده با پراپرتی زیر رفع میشه android:contentDescription="@string/imageViewDescription" اما در خصوص اینکه چی هست من یه توضیح مختصر میدم و در آخر لینکی به شما معرفی میکنم میتونید کامل بررسی کنید در مواقع این خاصیت رو از ADT 16 در نظر گرفته شد و یکی از کاربرداش واسه اینه که افرادی که از لحاظ بینایی مشکل دارن مثلا کور رنگی دارند و نمیتونند تصویر رو درست تشخصی بدند یا کسانی که سن بالایی دارن یا هر کسی که مشکلی داره از یک توضیح متنی استفاده کنند برای درک اون تصویر در واقع این متنی که شما مینویسین یک درک خلاصه ای از تصویر به این دسته از کاربران میده و البته این ویژگی در درجه اول برای دسترس پذیری هست این هم لینک که میتونید کاملا باهاش آشنا بشید لینک (9 سال پیش)
+1 0
در ضمن این رو هم اضافه کنم این خاصیت واسه view هایی هست که غیر متنی هستند مثل همین imageview یا ImageButtons و از قبیل این ها (9 سال پیش)
+1 0
با توضیحات خوبت کاملا متوجه شدم .دستت درد نکنه واقعا.فقط یه سوال :‌ الان اگه من یه contentDescription بهش بدم بعد کسی که مشکل بینایی داره چطور این توضیحات براش نمایان میشه؟چیز خاصی هست که باید فعال کنه؟ (9 سال پیش)
+1 0
خب دوست عزیز چون مجبورم یکی دو خط کدم برات بنویسم تو پاسخ جواب میدم (9 سال پیش)
+1 0
محلش نده ! این لوس بازیای اندروید استودیوست (9 سال پیش)
0 0
ههههههه خیلی باحال گفتی ‌:) , میدونم نیازی نیست بهش توجه کنم ولی خب کنجکاو شدم دیگه (9 سال پیش)
 برای این سوال 2 پاسخ وجود دارد.
پاسخ به سوال 
hossein_hr10  9 سال پیش
+1 0

ببینین اینطور که خود گوگل گفته دو راه برای اینکار وجود داره ، یک راه استاتیک و یک راه پویا ، که توی راه استاتیک شما از فایل xml تون میرین و attribute زیر رو به imageview تون اضافه میکنین

android:contentDescription="My Text"
 

خب این راه اول ، از این لحاظ بهش میگن استاتیک چون دیگه در life sycle اندروید دیگه شما نمیتونید متن داخلش رو تغییر بدید

اما راه پویا ، شما در اکتیویتون این خط کد رو برای imageview تون بنویسید

imageview.setContentDescription("My Text");
 

فقط نکته مهم اینکه شما باید قبل اینکه برنامه تون رو اجرا کنید از تنظیمات گوشی برید به قسمت Accessibility ( قابلیت دستری ) بعدش باید گزینه talkback رو ( برای دیداری ) فعال کنید  

بعدش برنامه رو اجرا کنید روی imageview یی که گذاشتین اگه دوبار کلیک کنین این متنی که برای توی برنامه set کردین رو براتون خونده میشه

 

+1 0
فقط نکته ای که یادم رفت بگم تا اونجایی که من میدونم امولاتور ها این قابلیت talkback رو ندارن و باید روی گوشی تست کنین من جنی موشن رو نگاه کردم نداشت اما روی گوش های واقعی این قابلیت موجود هست و میتونید فعالش کنید موفق باشد (9 سال پیش)
+1 0
چه باحاااااال دمت گررم .من به تصویرم contentDescription دادم توی تنظیمات جایی که گفتین هم روی گوشیم فعالش کردم.اما دوبار که رو عکس میزنم اتفاقی نمیفته:(( (9 سال پیش)
پاسخ به سوال 
hossein_hr10  9 سال پیش
+1 0

خب من برای اینکه به حس کنجکاوی شما پایان بدم یه اپلیکیشن تستی برات درست کردم و فیلم گرفتم (در حد چند ثانیه) :) شامل یک textview و یه imageview که آیکون اندروید رو نشون میده و براش description زیر گذاشتم

 android:contentDescription="test test test tes "
 

اینم لینکش

http://s8.picofile.com/file/8294459100/test.mp4.html

 

+1 0
عه چه باحاااللللله , برا منم درست شد.ایول خیلی مردی (9 سال پیش)

پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .