অ্যান্ড্রয়েড EditText-এ ড্রেয়েবল (Drawable) ইমেজ সেট করার পদ্ধতি
এই উদাহরণটি দেখাবে কিভাবে একটি EditText-এর ভেতর বা পাশে আইকন/ইমেজ যোগ করতে হয়। অ্যান্ড্রয়েডে এটি খুব সহজে XML অ্যাট্রিবিউট দিয়ে করা যায়, জাভা কোড লিখার প্রয়োজন নেই।
ধাপ ১: নতুন প্রজেক্ট তৈরি করুন
Android Studio-তে File → New Project এ যান এবং প্রজেক্ট তৈরি করুন।
ধাপ ২: লেয়াউট ফাইল সংশোধন করুন (res/layout/activity_main.xml)
নিচের XML-এ EditText-এর android:drawableRight (ডান পাশে) বা android:drawableStart (বাম পাশে) অ্যাট্রিবিউট ব্যবহার করে সিস্টেম আইকন সেট করা হয়েছে। পাশাপাশি কাস্টম ব্যাকগ্রাউন্ডের জন্য @drawable/rounded_edittext ব্যবহার করা হয়েছে।
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="https://schemas.android.com/apk/res/android"
xmlns:tools="https://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:gravity="center"
android:layout_marginTop="30dp"
tools:context=".MainActivity">
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:paddingStart="5dp"
android:background="@drawable/rounded_edittext"
android:drawableRight="@android:drawable/ic_menu_search"
android:paddingLeft="5dp" />
</LinearLayout>
ধাপ ৩: ড্রেয়েবল রিসোর্স তৈরি করুন (drawable/rounded_edittext.xml)
res/drawable/ ফোল্ডারে rounded_edittext.xml নামক একটি ফাইল তৈরি করুন যাতে EditText-এর কোণা গোলাকার এবং বর্ডার থাকে।
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="https://schemas.android.com/apk/res/android">
<solid android:color="#FFFFFF" />
<stroke
android:width="1dp"
android:color="#2f6699" />
<corners
android:radius="10dp" />
</shape>
অ্যাপ্লিকেশনটি চালান
ডিভাইস সংযুক্ত করে Run করুন। আপনি দেখবেন EditText-এর ডান পাশে একটি সার্চ আইকন এবং সুন্দর একটি রাউন্ডেড বর্ডার আছে।

অতিরিক্ত জ্ঞান: ড্রেয়েবল পজিশনিং
android:drawableLeft/drawableStart: বাম পাশে ইমেজandroid:drawableRight/drawableEnd: ডান পাশে ইমেজandroid:drawableTop: উপরে ইমেজandroid:drawableBottom: নিচে ইমেজandroid:drawablePadding: টেক্সট এবং ইমেজের মধ্যবর্তী দূরত্ব নিয়ন্ত্রণ করে।
নোট: API 17 (Jelly Bean MR1) এর بعدে RTL (Right-to-Left) ভাষা সাপোর্টের জন্য Start/End ব্যবহার করা 베スト প্র্যাক্টিস।