در گذشته برای کار با لایههای XML در اندروید باید از متد findViewById استفاده میشد که بتوان ویوی مورد نظر را در Context مورد نظر پیدا کرد اما در امکانات جدیدی که در Android Jetpack قرار گرفت، یک امکان جدید به نام ViewBinding نیز افزوده شد.
قابلیت ViewBinding در اندروید یک سری مزایای بیشتر نسبت به روش سنتی یافتن Viewها به کمک متد findViewById دارد که هم از بروز مشکلات جلوگیری میکند و هم کار را سادهتر میکند.
ویو بایندینگ یکی از امکانات جت پک در اندروید است که در کنفرانس IO توسط گوگل در سال 2019 معرفی شد. این روش برای حل مشکلات کار با لایههای XML در اندروید به وجود آمده است که بتواند خلاها و مشکلات روش سنتی را بپوشاند.
کار با Viewها در اندروید ممکن است چالشهایی را به دنبال داشته باشد. یکی از این چالشها، مشکلات کار با روشهای قدیمی برای برنامهنویسی در اکتیویتی، فرگمنت و... است. در زیر به برخی از امکانات ویو بایندینگ اشاره خواهیم کرد.
یکی از مشکلات روش findViewById عدم قطعیت از Null Safe بودن آن است. یعنی شما هیچ اطمینانی از اینکه آن ویو واقعا در لایه مورد نظر شما وجود داشته باشد، نخواهید داشت. چرا که ممکن است یک ویو با همان شناسه در یک لایه دیگر تعریف شده باشد و شما آن را اشتباه بگیرید.
در نتیجه در زمان اجرا (RunTime) متوجه آن خواهید شد و نمیتوانید در هنگام بیلد پروژه به وجود مشکل آن پی ببرید.
Type Safe به این معناست که وقتی شما ویوی مورد نظر را از طریق ViewBinding صدا میزنید، دقیقا نوع View مشخص است و شناخته میشود. در صورتی که در روش findViewById، فقط از View بودن آن عنصر احتمالا اطمینان حاصل کنید ولی نوع آن را اشتباه کنید.
روش ViewBinding در اجرا بسیار ساده و دلنشین است. دیگر کدهای اضافی نخواهید داشت و مستقیما به سراغ پیادهسازی منطق خود خواهید رفت. همه چیز به سادگی پیاده و استفاده میشود.
ممکن است پاسخ سوال شما درباره ویدیوی آموزش ViewBinding و Toast در برنامهنویسی اندروید در اینجا باشد.
وقتبخیر. آموزشتون عالی هست ولی متاسفانه توی قسمت ViewBinding بحث یدفعه خیلی گنگ شد انگار از اول ابتدایی جهش کردیم آخر دبیرستان ای کاش دوباره به طرق دیگه و واضحتر آموزش بدید
سلام. ممنون از نظرتون. حتما قبل از این آموزش دوره مقدماتی کاتلین رو ببینید. چون پیش نیاز این دوره، دوره مقدماتی کاتلین هست و باید زبان برنامهنویسی کاتلین رو بشناسید. اگر دوره مقدماتی رو ندید، لینک دوره: https://stacklearn.ir/course/kotlin-programming-basics اگر مورد دیگهای هست و دوره رو دیدید و احساس میکنید باز هم مشکلاتی دارید، بهمون اطلاع بدید تا بررسی کنیم.
از زحمات شما ممنونم
اشتباه شد فایل هست