ActionBar/Toolbar-এ হোম আইকন সেট করা এবং তার ক্লিক ইভেন্ট হ্যান্ডলিং
এই উদাহরণটি দেখাবে কিভাবে একশনবারের হোম পজিশনে একটি কাস্টম আইকন (Logo) সেট করা যায় এবং সেটিতে ক্লিক করলে নির্দিষ্ট অ্যাকশন (এখানে এক্টিভিটি ফিনিশ) করা যায়। setHomeAsUpIndicator() মেথডটি এই কাজে ব্যবহৃত হয়।
ধাপ ১: নতুন প্রজেক্ট তৈরি করুন
Android Studio-তে File → New Project দিয়ে প্রজেক্ট তৈরি করুন। res/drawable/ ফোল্ডারে logo.png বা যেকোনো ইমেজ রাখুন।
ধাপ ২: লেয়াউট ফাইল (res/layout/activity_main.xml)
<?xml version = "1.0" encoding = "utf-8"?>
<LinearLayout 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:gravity = "center"
android:layout_height = "match_parent"
tools:context = ".MainActivity">
<TextView
android:id = "@+id/text"
android:textSize = "30sp"
android:layout_width = "match_parent"
android:layout_height = "match_parent" />
</LinearLayout>
ধাপ ৩: জাভা কোড (src/MainActivity.java)
package com.example.myapplication;
import android.annotation.SuppressLint;
import android.app.ActivityManager;
import android.app.admin.DevicePolicyManager;
import android.content.ComponentName;
import android.content.Context;
import android.content.Intent;
import android.net.wifi.WifiInfo;
import android.net.wifi.WifiManager;
import android.os.Build;
import android.os.Bundle;
import android.support.annotation.RequiresApi;
import android.support.v7.app.AppCompatActivity;
import android.view.MenuItem;
import android.view.View;
import android.widget.TextView;
public class MainActivity extends AppCompatActivity {
TextView textView;
@SuppressLint("RestrictedApi")
@RequiresApi(api = Build.VERSION_CODES.N)
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
textView = findViewById(R.id.text);
getSupportActionBar().setTitle("Home");
getSupportActionBar().setSubtitle("sairam");
getSupportActionBar().setDisplayHomeAsUpEnabled(true); // আপ বাটন সক্রিয়
getSupportActionBar().setHomeAsUpIndicator(R.drawable.logo); // কাস্টম আইকন সেট
textView.setText("Icon enabled");
}
@Override
public boolean onOptionsItemSelected(MenuItem menuItem) {
if (menuItem.getItemId() == android.R.id.home) {
finish(); // কাস্টম একশন: এক্টিভিটি বন্ধ
return true;
}
return super.onOptionsItemSelected(menuItem);
}
}
অ্যাপ্লিকেশনটি রান করুন
ডিভাইস সংযুক্ত করে Run করুন। একশনবারের বামে ডিফল্ট ব্যাক অ্যারোর বদলে আপনার কাস্টম লোগো দেখাবে। লোগোতে ক্লিক করলে অ্যাপ বন্ধ হবে।

মডার্ন Toolbar প্যাটার্ন (Recommended)
ActionBar ডিপ্রিকেট হয়েছে না কিন্তু Toolbar ব্যবহার করা বেটার:
<androidx.appcompat.widget.Toolbar
android:id="@+id/toolbar" ... >
<ImageView
android:id="@+id/custom_icon"
android:layout_width="?attr/actionBarSize"
android:layout_height="?attr/actionBarSize"
android:src="@drawable/logo"
android:contentDescription="@string/app_name" />
</androidx.appcompat.widget.Toolbar>
// Activity-এ
Toolbar toolbar = findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
getSupportActionBar().setDisplayShowTitleEnabled(false); // ডিফল্ট টাইটেল লুকান
ImageView customIcon = findViewById(R.id.custom_icon);
customIcon.setOnClickListener(v -> {
// আপনার কাস্টম লজিক
onBackPressed();
});
এটি আরও ফ্লেক্সিবল (এনিমেশন, রিপল ইফেক্ট, মাল্টিপল আইকন)।