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

অ্যান্ড্রয়েড ListView-এ লং ক্লিক লিসেনার ইমপ্লিমেন্ট করা

ListView-এ দীর্ঘ ক্লিক হ্যান্ডলিং

এই টিউটোরিয়ালে দেখানো হয়েছে কিভাবে ListView-এর আইটেমগুলোর ওপর লং প্রেস (দীর্ঘ ক্লিক) ডিটেক্ট করে একশন নেওয়া যায়।

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

ধাপ ২: ListView লেআউট

<?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:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    tools:context=".MainActivity">
    <ListView
        android:id="@+id/listView"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />
</LinearLayout>

ধাপ ৩: MainActivity.java - লং ক্লিক লিসেনার

package app.com.sample;

import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.Toast;
import androidx.appcompat.app.AppCompatActivity;

public class MainActivity extends AppCompatActivity {
    String[] mobileArray = {"Android", "IPhone", "WindowsMobile", "Blackberry", "WebOS", "Ubuntu", "Windows7", "Max OS X"};
    
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        
        ListView listView = findViewById(R.id.listView);
        ArrayAdapter adapter = new ArrayAdapter<>(this, android.R.layout.simple_list_item_1, mobileArray);
        listView.setAdapter(adapter);
        
        // লং ক্লিক লিসেনার সেট করুন
        listView.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() {
            @Override
            public boolean onItemLongClick(AdapterView parent, View view, int position, long id) {
                String selectedItem = (String) parent.getItemAtPosition(position);
                Toast.makeText(getApplicationContext(), "Long clicked: " + selectedItem, Toast.LENGTH_SHORT).show();
                return true; // true রিটার্ন করলে ইভেন্ট কনসামড মाना হয়
            }
        });
    }
}

মূল পার্থক্য

লিসেনার টাইপমেথডরিটার্ন টাইপব্যবহার
OnItemClickListeneronItemClickvoidসাধারণ ক্লিক
OnItemLongClickListeneronItemLongClickbooleanদীর্ঘ ক্লিক

টিপস

  • true রিটার্ন করলে সিস্টেম বুঝবে ইভেন্ট হ্যান্ডল করা হয়েছে।
  • কন্টেক্সট মেনু দেখানোর জন্য registerForContextMenu(listView) ব্যবহার করুন।
  • RecyclerView-এ OnLongClickListener আডাপ্টারের ভিউহোল্ডারে সেট করতে হয়।
  1. অ্যান্ড্রয়েডে ListView-এ ক্লিক করলে আইটেম মুছে ফেলা

  2. অ্যান্ড্রয়েড ListView-এ ক্লিক ইভেন্ট হ্যান্ডল করার পদ্ধতি

  3. অ্যান্ড্রয়েডে অ্যালার্ম ম্যানেজার ইমপ্লিমেন্টেশন

  4. অ্যান্ড্রয়েড ListView-এ ফুটার যোগ করার পদ্ধতি