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

Android Popup Menu উদাহরণ


Popup Menu কী?

Popup Menu হলো একটি মেনু যা ভিউর উপর বা নিচে আভাস হয়, এক্টিভিটিতে খালি স্পেস অনুযায়ী। নিচে Android Popup Menu তৈরির সহজ পদ্ধতি দেওয়া হয়েছে।

পদক্ষেপ ১: নতুন প্রজেক্ট তৈরি করুন

Android Studio-তে File → New Project এ যান এবং প্রয়োজনীয় বিবরণ পূরণ করুন।

পদক্ষেপ ২: res/layout/activity_main.xml-এ কোড যোগ করুন

<?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:id="@+id/rootview"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:background="#c1c1c1"
    android:gravity="center_horizontal"
    tools:context=".MainActivity">
    <Button
        android:id="@+id/popup"
        android:text="Download"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />
</LinearLayout>

এখানে একটি বাটন দেওয়া হয়েছে। বাটনে ক্লিক করলে Popup Menu দেখাবে।

পদক্ষেপ ৩: src/MainActivity.java-এ কোড যোগ করুন

package com.example.andy.myapplication;

import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.MenuItem;
import android.view.View;
import android.widget.Button;
import android.widget.PopupMenu;
import android.widget.Toast;

public class MainActivity extends AppCompatActivity {
    Button popupButton;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        popupButton = findViewById(R.id.popup);
        popupButton.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                popupMenuExample();
            }
        });
    }

    private void popupMenuExample() {
        PopupMenu p = new PopupMenu(MainActivity.this, popupButton);
        p.getMenuInflater().inflate(R.menu.popup_menu_example, p.getMenu());
        p.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() {
            @Override
            public boolean onMenuItemClick(MenuItem item) {
                Toast.makeText(MainActivity.this, item.getTitle(), Toast.LENGTH_SHORT).show();
                return true;
            }
        });
        p.show();
    }
}

মেনু XML তৈরি করুন (res/menu/popup_menu_example.xml)

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="https://schemas.android.com/apk/res/android">
    <item
        android:id="@+id/android"
        android:title="Android" />
    <item
        android:id="@+id/java"
        android:title="JAVA" />
    <item
        android:id="@+id/kotlin"
        android:title="Kotlin" />
</menu>

কোড ব্যাখ্যা

  • PopupMenu p = new PopupMenu(MainActivity.this, popupButton); — PopupMenu অবজেক্ট তৈরি করে, এনকার বাটন হিসেবে popupButton ব্যবহার করা হয়েছে।
  • p.getMenuInflater().inflate(R.menu.popup_menu_example, p.getMenu()); — মেনু XML ইনফ্লেট করে।
  • p.setOnMenuItemClickListener(...) — মেনু আইটেমে ক্লিক হলে কী হবে তা ডিফাইন করে। এখানে Toast দেখানো হয়েছে।
  • p.show(); — Popup Menu স্ক্রিনে দেখানোর জন্য কল করতে হয়।

ফলাফল

অ্যাপ চালু করলে ডিফল্ট স্ক্রিন দেখাবে। "Download" বাটনে ক্লিক করলে Popup Menu দেখাবে। স্পেস ন रहने প 보고 মেনু বাটনের নিচে দেখাবে। মেনু আইটেমে ক্লিক করলে Toast মেসেজ দেখাবে।

Android Popup Menu উদাহরণ Android Popup Menu উদাহরণ Android Popup Menu উদাহরণ

মূল পয়েন্টসমূহ

  • Popup Menu কোনো ভিউর সাথে আঙ্কুর (anchor) করা হয়।
  • মেনু আইটেমের জন্য আলাদা XML ফাইল (res/menu/) ব্যবহার করা ভালো প্র্যাকটিস।
  • OnMenuItemClickListener দিয়ে ক্লিক ইভেন্ট হ্যান্ডল করুন।
  1. অ্যান্ড্রয়েড সেটিংস মেনু: এক্সেস করার ধাপে ধাপে গাইড

  2. অ্যান্ড্রয়েডে "Improve Location Accuracy" পপ-আপ ফিক্স করুন: GPS প্রিসিশন বাড়ান

  3. অ্যান্ড্রয়েড সেটিংস মেনু অ্যাক্সেস করার ধাপে ধাপে গাইড

  4. অ্যান্ড্রয়েডে পপ-অ্যাড বন্ধ করুন: ধাপে ধাপে গাইড