ListView-এ কাস্টম ফুটার ভিউ যোগ করা
অ্যান্ড্রয়েড ListView-এ addFooterView() মেথড ব্যবহার করে একটি কাস্টম লেআউট ফুটার হিসেবে যোগ করা যায়। ফুটার লিস্টের শেষে থাকে এবং স্ক্রল করার সময় লিস্ট আইটেমের সাথে حرکت করে।
ধাপ ১: প্রজেক্ট তৈরি করুন
স্ট্যান্ডার্ড অ্যান্ড্রয়েড প্রজেক্ট সেটআপ করুন।
ধাপ ২: মেইন লেআউট
res/layout/activity_main.xml - শুধু ListView রাখুন:
<RelativeLayout 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"
tools:context=".MainActivity">
<ListView
android:id="@+id/listView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true">
</ListView>
</RelativeLayout>
ধাপ ৩: ফুটার লেআউট তৈরি করুন
res/layout/listview_footer.xml নামে নতুন লেআউট ফাইল তৈরি করুন:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="https://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:id="@+id/textView"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Footer: End of the ListView!"
android:textAppearance="?android:attr/textAppearanceLarge"
android:padding="16sp" />
</LinearLayout>
ধাপ ৪: জাভা কোডে ফুটার যোগ করুন
src/MainActivity.java:
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import android.app.Activity;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.ListView;
public class MainActivity extends Activity {
ListView listView;
String[] country = new String[] {
"India", "Australia", "South Africa", "North America",
"South America", "Iceland", "GreenLand"
};
List<String> listString;
LayoutInflater layoutInflater;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
listView = findViewById(R.id.listView);
listString = new ArrayList<>(Arrays.asList(country));
ArrayAdapter<String> adapter = new ArrayAdapter<>(this,
android.R.layout.simple_list_item_1, listString);
layoutInflater = getLayoutInflater();
ViewGroup footer = (ViewGroup) layoutInflater.inflate(
R.layout.listview_footer, listView, false);
listView.addFooterView(footer);
listView.setAdapter(adapter);
}
}
গুরুত্বপূর্ণ টিপস
- অ্যাডাপ্টার সেট করার আগে ফুটার যোগ করতে হবে, নাহলে ফুটার দেখাবে না
- ফুটার ভিউতে ক্লিক লিসেনার যোগ করা যায়:
footer.setOnClickListener(...) - হেডার যোগ করতে
addHeaderView()ব্যবহার করুন - একাধিক ফুটার/হেডার যোগ করা সম্ভব
ম্যানিফেস্ট
স্ট্যান্ডার্ড ম্যানিফেস্ট ফাইল ব্যবহার করুন।