Skip to main content

Android Development -02

 

আসসালামুআলাইকুম ওয়া রহমাতুল্লাহি ওয়া বারাকাতুহু

এই পোষ্টে আরেকটু নতুন কিছু লিখব     ইনশাআল্লাহ।

আমরা শিখে ছিলাম Layout এর ভিতর অনেক ধরনের View থাকে, তার মধ্যে যেটা TextView এটাই আমরা যেকোনো লিখা আমাদের App এ দেখানোর জন্য ব্যবহার করি, কিন্তু Default ভাবে লিখাটা অনেক ছোট থাকে, লিখার ব্যাকগ্রাউন্ড ডিফল্টভাবে দেয়া থাকে, এখন আমরা TextVIew এর কিছু কাজ নিয়ে আলোচনা করব, প্রথমেই নরমাল একটা TextView এর কোড দেখে নেই

 

   <TextView

    android:text="I got you a free hug. Surprise!"

    android:background="@android:color/darker_gray"

    android:layout_width="wrap_content"

    android:layout_height="wrap_content"

    android:textSize="45sp" />

   

কোডে আমাদের শুরুটা হলো <TextView

এরপর আমরা এইখানে কি করতে চাই? একটা লিখা প্রিন্ট করাইতে চাই, তাই না?

কোথায় প্রিন্ট করাইতে চাই? কোনো একটা android device এ। তাই এইবার লিখব

android:text=”এইখানে আমি যা লিখতে চাই সেই টেক্সটা দিব”

এরপর এই লিখাটা কতটুক জায়গা নিবে কোনদিকে হাইট, উইথ কিরকম কি হবে এটা দিব, তাহলে ততটূক জায়গা এই লিখার জন্য রিজার্ভ হয়ে যাবে আর কি ,

android:width=”300px”

android:height=”200px”

আমরা এইখানে একক(unit) ইউজ করলাম px (pixel) । কিন্তু এই একক ইউজ করা সেফ না আর কি, কারণ একেক মোবাইলের পিক্সেল একেক রকম ব্যবহার হয়, তাই আপনি যদি এইখানে px একক ইউজ করেন তাহলে আপনার এই লিখা এক মোবাইলে অনেক বড় দেখাবে আবার কোনো কোনো মোবাইলে ছোট বড় দেখাবে আর কি, তাই আমাদের এইখানে px ইউজ না করে

dp (density independent pixels) ইউজ করব, এটা সব ডিভাইসের জন্যেই ফিক্সড একটা আকার দিবে, সেখানে আলাদা আলাদা ডিভাইসের জন্যে ভিতর ভিতর px কম বেশি করে নিবে, কিন্তু আমরা ঠিক সাইজ আউটপুট পাবো আর কি । তাই আমরা dp unit ইউজ করব।

 

এইখানে বলার মতো আরেকটা বিষয় সেটা হচ্ছে আমরা অনেক জায়গায় দেখি height আর width এর একক হিসেবে android:width=”warp_content” লিখা থাকে, এটার কাহিনি হইলো আমারা যেই width , height দিয়েছি আমাদের লিখা ঐ সাইজের থেকে তো কম বেশি ও হইতে পারে তাই না, তো আমরা কি বারবার চেঞ্জ করতে থাকবো? নাহ, এইজন্যেই “wrap_content” ইউনিট ইউজ করা হয়, এটার কাজ হলো আমাদের লিখা যতটুক থাকবে TextView এর সাইজও ততটুকই করে দিবে, বুঝছেন ভাই?  এখন আপনি কম লিখলে কম সাইজ TextView  এর জন্যে বুকিং হবে, বেশি লিখলে বেশি, এই আর কি।

প্রথমে দেখি লিখার সাইজ অনেক ছোট থাকে, এখন যদি আমরা লিখাটা বড় করতে চাই তাহলে কি করা লাগবে? কমন সেন্স থেকে বুঝা যায় text এর size বাড়াইতে হবে,

android:textSize=”45sp”

টেক্সট সাইজের ক্ষেত্রে আমরা একক (unit) sp ইউজ করব, কারণ আমাদের ডিভাইসে একটা অপশন থাকে font size  ->  small, medium, large , তো আমরা যাতে অপশন অনুযায়ী চেঞ্জ করতে পারি, ঐজন্য এইখানে sp unit ইউজ করব।

 

এখন ধরেন লিখার একটা ব্যাকগ্রাউন্ড দিতে আমার খুব মন চাইতেছে, তাহলে কার ব্যাকগ্রাউন্ড দিব?

<TextView

android:background=”@android:color/darker_gray”

 

এবার <ImageView দেখব হালকা পাতলা,

<ImageView

    android:src="@drawable/cake"

    android:layout_width="wrap_content"

    android:layout_height="wrap_content"

    android:scaleType="center"/>  //centerCrop

 

এইখানে drawable হচ্ছে রিসোর্স টাইপ,

Comments

Popular posts from this blog

IELTS Spoken Class Adminssion Scenario - 01

.......  Student: Hello, May I come in, sir ? Optional (student): May I sit ? Sir:  Please have a seat. Sir: How may I help you, Sir ? Student: I would like to admit in your spoken course. Sir: Oh sure. Student: How many days are there in a week ? Sir: There are three classes in a week. Student: What time do you offer class ? Sir: We have class at 11am / 4pm / 6pm / 8pm

Php Learning Time

 Differences of explode( ) and implode( ) in php: explode: একটা স্ট্রিংকে কোনো একটা সেপারেটরের বেসিসে অ্যারেতে কনভার্ট করে, যেমন  <?php $text="Hello How are you?"; print_r(explode(" ",$text)); ?> This will give output of  Array (     [0] => Hello     [1] => How     [2] => are     [3] => you? ) Differences of array_splice( ) and array_slice( ) ধরেন আসল অ্যারে হচ্ছে    $arr =[ "Hello" , "this" , "is" , "test" , "text" ];    এখন এটাকে স্লাইসিং করার জন্য আমরা উপরের দুইটা মেথড ই ব্যবহার করতে পারি , কিন্তু array_splice এটা ইউজ করলে অরজিনাল array ও চেঞ্জ হয়ে যাবে, মানে যদি আমরা এভাবে লিখি  $var2 = array_splice ( $arr , 0 , 2 );   তাইলে $var2 এর ভিতরে থাকবে ["Hello" , "this"] ,  আর অরজিনাল array তে বাকি থাকবে ["is", "test", "text"] কিন্তু যদি আমরা ইউজ করি তাহলে অরজিনাল array আগের মতোই থাকবে পাশাপাশি $var2 এর মধ্যে ভ্যালু গুলা এসে পড়বে  Array (     [0] => ...