Relative layout
এতদিন আমরা LinearLayout নিয়ে কাজ করেছি, আজ আমরা দেখবো কিভাবে RelativeLayout নিয়ে কাজ করা হয় ।
প্রথমেই দেখা যাক LinearLayout এর কোন কোন কম্পন্যান্ট , RelativeLayout এ নাই । সেগুলো হল - layout_weight , layout_gravity, orientation ।
LinearLayout এ আমরা একটি ভিউ এর পাশাপাশি কিংবা উপর-নিচ আরেকটা ভিউ নিয়ে কাজ করতাম, সেটা কিরকম হবে তা উপরে orientation এর ভিতর সেট করে দিতাম, আর RelativeLayout এ যেহেতু orientation নাই সেহেতু একটি ভিউ নেয়ার পর আরেকটি ভিউ কোথায় বসবে তা সর্বদা পূর্বের ভিউ এর নির্ভর করে । তাই RelativeLayout এর প্রতিটি ভিউতে আইডি অবশ্যই দিতে হবে ।
যেমন - LinearLayout এ যদি দুইটা ভিউ নিয়ে কাজ করতাম তা এরকম হত ( orientation=vertical ) -
এবং এটা দেখতে এরকম -
কিন্তু এই ডিজাইন টাই যদি আমরা RelativeLayout নিয়ে ডিজাইন করতে চাই , তাহলে যেরকম হবে -
দেখুন এখানে layout_below নামে একটি নতুন ট্যাগ এর সাথে পরিচিত হলাম যেটি LinearLayout এ ছিল নাহ । বাটন ২ এর এই ট্যাগ দ্বারা, বাটন ১ এর উপরে-নিচে,ডানে-বামে কোথায় বসবে তা নির্ধারণ করে দিলাম । তো RelativeLayout এ এরকম কিছু নতুন ট্যাগ এর সাথে পরিচিত হব আমরা । চলুন দেখা যাক ট্যাগগুলো -
Layout_below : কোন ভিউকে অন্য ভিউ'য়ের নিচে দেখানোর জন্য এটি ব্যাবহার করা হয় । একটি ভিউকে অন্য ভিউ এর ডানে বসাতে layout_toRightOf কিংবা layout_toEndOf ব্যাবহার করা হয় । বামে বসাতে layout_toLeftOf এবং একটি ভিউকে অন্য ভিউ এর উপরের দিকে বসাতে layout_above ব্যাবহার করা হয় ।
Layout_alignParentLeft : এটি ব্যাবহার করলে ভিউটি তার প্যারেন্ট অনুযায়ী বামে বসবে । প্যারেন্ট বলতে আমরা যে ভিউগুলো নিয়ে কাজ করবো এইগুলোর তো একটি রুট লেআউট থাকবে । তো রুট অনুযায়ী ভিউটি বামে বসবে । এটির ভ্যালু হবে true অথবা false। এমনভাবে layout_alignParentRight , layout_alignParentTop , layout_alignParentBottom ট্যাগ ইউজ করা হয়।
layout_alignLeft : এই ভিউ অন্য ভিউটির বামে বসবে তার নির্দেশনা দেয়, অন্যগুলোও সেইম ভাবে কাজ করে । যেমন - layout_alignRight , layout_alignTop, layout_alignBottom ।
layout_centerInParent : কোন ভিউকে স্ক্রিনের একদম মাঝে নিয়ে আসতে এই ট্যাগ ইউজ করে হয় । এমনভাবে কোন ভিউকে যদি সরলরেখায় মাঝ বরাবর নিয়ে আসার জন্য layout_centerVertical এবং উপর-নিচ এ মাঝ বরাবর নিয়ে আসতে layout_centerHorizontal ব্যাহার করা হয় ।
তো দু,একটি ডিজাইন এবার RelativeLayout দিয়ে প্র্যাকটিস করে ফেলুন 😊
প্রথমেই দেখা যাক LinearLayout এর কোন কোন কম্পন্যান্ট , RelativeLayout এ নাই । সেগুলো হল - layout_weight , layout_gravity, orientation ।
LinearLayout এ আমরা একটি ভিউ এর পাশাপাশি কিংবা উপর-নিচ আরেকটা ভিউ নিয়ে কাজ করতাম, সেটা কিরকম হবে তা উপরে orientation এর ভিতর সেট করে দিতাম, আর RelativeLayout এ যেহেতু orientation নাই সেহেতু একটি ভিউ নেয়ার পর আরেকটি ভিউ কোথায় বসবে তা সর্বদা পূর্বের ভিউ এর নির্ভর করে । তাই RelativeLayout এর প্রতিটি ভিউতে আইডি অবশ্যই দিতে হবে ।
যেমন - LinearLayout এ যদি দুইটা ভিউ নিয়ে কাজ করতাম তা এরকম হত ( orientation=vertical ) -
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Button 1"/>
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Button 2"/>
এবং এটা দেখতে এরকম -
কিন্তু এই ডিজাইন টাই যদি আমরা RelativeLayout নিয়ে ডিজাইন করতে চাই , তাহলে যেরকম হবে -
<Button
android:id="@+id/btn1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Button 1"/>
<Button
android:id="@+id/btn2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Button 2"
android:layout_below="@id/btn1"/>
দেখুন এখানে layout_below নামে একটি নতুন ট্যাগ এর সাথে পরিচিত হলাম যেটি LinearLayout এ ছিল নাহ । বাটন ২ এর এই ট্যাগ দ্বারা, বাটন ১ এর উপরে-নিচে,ডানে-বামে কোথায় বসবে তা নির্ধারণ করে দিলাম । তো RelativeLayout এ এরকম কিছু নতুন ট্যাগ এর সাথে পরিচিত হব আমরা । চলুন দেখা যাক ট্যাগগুলো -
Layout_below : কোন ভিউকে অন্য ভিউ'য়ের নিচে দেখানোর জন্য এটি ব্যাবহার করা হয় । একটি ভিউকে অন্য ভিউ এর ডানে বসাতে layout_toRightOf কিংবা layout_toEndOf ব্যাবহার করা হয় । বামে বসাতে layout_toLeftOf এবং একটি ভিউকে অন্য ভিউ এর উপরের দিকে বসাতে layout_above ব্যাবহার করা হয় ।
Layout_alignParentLeft : এটি ব্যাবহার করলে ভিউটি তার প্যারেন্ট অনুযায়ী বামে বসবে । প্যারেন্ট বলতে আমরা যে ভিউগুলো নিয়ে কাজ করবো এইগুলোর তো একটি রুট লেআউট থাকবে । তো রুট অনুযায়ী ভিউটি বামে বসবে । এটির ভ্যালু হবে true অথবা false। এমনভাবে layout_alignParentRight , layout_alignParentTop , layout_alignParentBottom ট্যাগ ইউজ করা হয়।
layout_alignLeft : এই ভিউ অন্য ভিউটির বামে বসবে তার নির্দেশনা দেয়, অন্যগুলোও সেইম ভাবে কাজ করে । যেমন - layout_alignRight , layout_alignTop, layout_alignBottom ।
layout_centerInParent : কোন ভিউকে স্ক্রিনের একদম মাঝে নিয়ে আসতে এই ট্যাগ ইউজ করে হয় । এমনভাবে কোন ভিউকে যদি সরলরেখায় মাঝ বরাবর নিয়ে আসার জন্য layout_centerVertical এবং উপর-নিচ এ মাঝ বরাবর নিয়ে আসতে layout_centerHorizontal ব্যাহার করা হয় ।
তো দু,একটি ডিজাইন এবার RelativeLayout দিয়ে প্র্যাকটিস করে ফেলুন 😊
মন্তব্যসমূহ
একটি মন্তব্য পোস্ট করুন