কম্পিউটার টিউটোরিয়াল

অ্যান্ড্রয়েডে বাটনের কোণাবৃত্তাকার কর্নার তৈরি করার পদ্ধতি

অ্যান্ড্রয়েড বাটনে রাউন্ডেড কর্নার (Round Corners) যোগ করা

সтан্ডার্ড বাটনের চারপাশের কোণ গোড়া করার জন্য ড্রയেবল রিসোর্স (Drawable Resource) ব্যবহার করা সবচেয়ে সহজ এবং কার্যকর পদ্ধতি। এই টিউটোরিয়ালে আমরা একটি কাস্টম শেপ ড্রয়েবল তৈরি করে বাটনের কর্নারগুলো রাউন্ড করব এবং বিভিন্ন স্টেট (প্রেসড, ফোকাসড, নর্মাল) এর জন্য আলাদা রঙ দেব।

প্রয়োজনীয় ধাপসমূহ

ধাপ ১: নতুন প্রজেক্ট তৈরি করুন

Android Studio-তে File → New Project এ যান এবং একটি Empty Activity প্রজেক্ট তৈরি করুন।

ধাপ ২: মেইন লেআউট (activity_main.xml)

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
    xmlns:android="https://schemas.android.com/apk/res/android"
    xmlns:app="https://schemas.android.com/apk/res-auto"
    xmlns:tools="https://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">

    <Button
        android:id="@+id/button1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:padding="10dp"
        android:textColor="#ffffff"
        android:background="@drawable/mybutton"
        android:text="বাটন"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintRight_toRightOf="parent"
        app:layout_constraintTop_toTopOf="parent" />

</androidx.constraintlayout.widget.ConstraintLayout>

ধাপ ৩: MainActivity.java

package com.app.sample;

import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;

public class MainActivity extends AppCompatActivity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }
}

ধাপ ৪: কাস্টম ড্রয়েবল তৈরি করুন (res/drawable/mybutton.xml)

এটি সবচেয়ে গুরুত্বপূর্ণ ধাপ। res/drawable/ ফোল্ডারে mybutton.xml নামে একটি ফাইল তৈরি করুন:

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="https://schemas.android.com/apk/res/android">
    
    <!-- প্রেসড স্টেট (দবাও থাকা অবস্থা) -->
    <item android:state_pressed="true">
        <shape android:shape="rectangle">
            <corners android:radius="8dp" />
            <stroke android:width="1dp" android:color="#5e7974" />
            <gradient
                android:angle="-90"
                android:startColor="#345953"
                android:endColor="#689a92" />
        </shape>
    </item>

    <!-- ফোকাসড স্টেট -->
    <item android:state_focused="true">
        <shape android:shape="rectangle">
            <corners android:radius="8dp" />
            <stroke android:width="1dp" android:color="#5e7974" />
            <solid android:color="#58857e" />
        </shape>
    </item>

    <!-- ডিফল্ট/নর্মাল স্টেট -->
    <item>
        <shape android:shape="rectangle">
            <corners android:radius="8dp" />
            <stroke android:width="1dp" android:color="#5e7974" />
            <gradient
                android:angle="-90"
                android:startColor="#8dbab3"
                android:endColor="#58857e" />
        </shape>
    </item>

</selector>
মূল উপাদানগুলো ব্যাখ্যা:
  • <selector>: বিভিন্ন স্টেটের জন্য আলাদা ড্রয়েবল সংজ্ঞায়িত করে
  • <shape android:shape="rectangle">: আকার আয়তাকার
  • <corners android:radius="8dp">: কোণাবৃত্তার ব্যাসার্ধ (এখানে 8dp)
  • <stroke>: বর্ডার/किनারা
  • <gradient>: গ্রেডিয়েন্ট ব্যাকগ্রাউন্ড
  • <solid>: একক রঙের ব্যাকগ্রাউন্ড

ধাপ ৫: ম্যানিফেস্ট ফাইল

সাধারণ ম্যানিফেস্ট কনফিগারেশন ব্যবহার করুন।

অ্যাপ্লিকেশন রান করুন

প্রজেক্টটি বিল্ড করে ডিভাইসে ইনস্টল করুন। বাটনটি ক্লিক করলে এর রঙ পরিবর্তন হবে এবং কোণগুলো সুন্দরভাবে গোলাকার দেখাবে।

অ্যান্ড্রয়েডে বাটনের কোণাবৃত্তাকার কর্নার তৈরি করার পদ্ধতি

প্রো টিপস

  • API 21+ (Lollipop) এর জন্য android:backgroundTint এবং android:stateListAnimator ব্যবহার করে আরও উন্নত ইফেক্ট যোগ করা যায়
  • MaterialButton ব্যবহার করলে app:cornerRadius অ্যাট্রিবিউট দিয়ে সরাসরি কর্নার রেডিয়াস সেট করা যায়
  • অনিমেশন যোগ করতে android:stateListAnimator বা RippleDrawable ব্যবহার করুন
  1. অ্যান্ড্রয়েডে বাটন অদৃশ্য বা মুছে ফেলার পদ্ধতি

  2. Android-এ Home Button ওভাররাইড/হ্যান্ডল করার পদ্ধতি

  3. অ্যান্ড্রয়েডে হোম বাটন দিয়ে ক্যামেরা লঞ্চ করার পদ্ধতি

  4. Android Layouts মাস্টার করুন: আপনার অ্যাপের জন্য সঠিক লেআউট বেছে নিন