Kotlin Android এক্সটেনশন বন্ধ করে দেওয়া হয়েছে, যার অর্থ হল ভিউ বাইন্ডিংয়ের জন্য Kotlin সিন্থেটিক্স ব্যবহার করার সুবিধা আর কাজ করে না। আপনার অ্যাপ ভিউ বাইন্ডিংয়ের জন্য Kotlin সিন্থেটিক্স ব্যবহার করলে, Jetpack ভিউ বাইন্ডিংয়ে মাইগ্রেট করতে এই নির্দেশিকা ব্যবহার করুন।
আপনার অ্যাপ যদি ভিউ বাইন্ডিংয়ের জন্য আগে থেকেই Kotlin সিন্থেটিক্স ব্যবহার না করে, তাহলে ব্যবহারের প্রাথমিক তথ্যের জন্য ভিউ বাইন্ডিং দেখুন।
Gradle ফাইল আপডেট করুন
Android এক্সটেনশনের মতো, Jetpack ভিউ বাইন্ডিং মডিউল-বাই-মডিউল
ভিত্তিতে চালু করা হয়। ভিউ বাইন্ডিং ব্যবহার করে এমন প্রতিটি মডিউলের জন্য, মডিউল-লেভেল build.gradle ফাইলে viewBinding বিল্ড
বিকল্পটি true-এ সেট করুন:
গ্ৰুভি
android { ... buildFeatures { viewBinding true } }
Kotlin
android { ... buildFeatures { viewBinding = true } }
আপনার অ্যাপ যদি Parcelable
ফিচার ব্যবহার না করে, তাহলে Kotlin Android এক্সটেনশন চালু করে এমন লাইনটি সরিয়ে দিন:
গ্ৰুভি
plugins { id 'kotlin-android-extensions' }
Kotlin
plugins { kotlin("android.extensions") }
কোনও মডিউলে ভিউ বাইন্ডিং চালু করার ব্যাপারে আরও জানতে, সেট-আপ নির্দেশাবলী দেখুন।
অ্যাক্টিভিটি ও ফ্র্যাগমেন্ট ক্লাস আপডেট করুন
Jetpack ভিউ বাইন্ডিংয়ের মাধ্যমে, মডিউলে থাকা প্রতিটি XML লেআউট ফাইলের জন্য
একটি বাইন্ডিং ক্লাস তৈরি করা হয়। এই বাইন্ডিং ক্লাসের নাম হল XML ফাইলের নাম, যা Pascal case-এ লেখা এবং শেষে Binding শব্দটি যোগ করা আছে। যেমন, লেআউট ফাইলের নাম result_profile.xml হলে, জেনারেট করা বাইন্ডিং ক্লাসের নাম হবে ResultProfileBinding।
সিন্থেটিক প্রপার্টির পরিবর্তে জেনারেট করা বাইন্ডিং ক্লাস ব্যবহার করে ভিউ রেফারেন্স করতে, আপনার অ্যাক্টিভিটি ও ফ্র্যাগমেন্ট ক্লাস পরিবর্তন করুন, এর জন্য নিম্নলিখিত ধাপগুলি অনুসরণ করুন:
kotlinx.android.syntheticথেকে সব ইমপোর্ট সরান।অ্যাক্টিভিটি বা ফ্র্যাগমেন্ট ব্যবহার করার জন্য জেনারেট করা বাইন্ডিং ক্লাসের ইনস্ট্যান্স ইনফ্লেট করুন।
- অ্যাক্টিভিটির জন্য, আপনার অ্যাক্টিভিটির
onCreate()পদ্ধতিতে ইনস্ট্যান্স ইনফ্লেট করতে অ্যাক্টিভিটিতে ভিউ বাইন্ডিং ব্যবহার করুন লিঙ্কে দেওয়া নির্দেশাবলী অনুসরণ করুন। - ফ্র্যাগমেন্টের জন্য, আপনার ফ্র্যাগমেন্টের
onCreateView()পদ্ধতিতে কোনও ইনস্ট্যান্স ইনফ্লেট করতে ফ্র্যাগমেন্টে ভিউ বাইন্ডিং ব্যবহার করুন লিঙ্কে দেওয়া নির্দেশাবলী অনুসরণ করুন।
- অ্যাক্টিভিটির জন্য, আপনার অ্যাক্টিভিটির
সিন্থেটিক প্রপার্টির পরিবর্তে বাইন্ডিং ক্লাস ইনস্ট্যান্স ব্যবহার করার জন্য সব ভিউ রেফারেন্স পরিবর্তন করুন:
// Reference to "name" TextView using synthetic properties.
name.text = viewModel.nameString
// Reference to "name" TextView using the binding class instance.
binding.name.text = viewModel.nameString
আরও জানতে, ভিউ বাইন্ডিং গাইডের ব্যবহার বিভাগ দেখুন।
আপনার জন্য সাজেস্ট করা হয়েছে
- মনে রাখবেন: জাভাস্ক্রিপ্ট বন্ধ থাকলে লিঙ্ক টেক্সট দেখানো হয়
- বাইন্ডিং দেখুন
- পেজিং লাইব্রেরি ওভারভিউ
- আপনার পেজিং ইমপ্লিমেন্টেশন পরীক্ষা করুন