Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Android

एंड्रॉइड में ArrayAdapter का उपयोग करके सिंपल ListView कैसे बनाएं?

एंड्रॉइड में ArrayAdapter के साथ ListView कार्यान्वयन

यह ट्यूटोरियल दर्शाता है कि ArrayAdapter का उपयोग करके स्ट्रिंग ऐरे से सिंपल ListView कैसे बनाया जाए, कस्टम आइटम लेआउट के साथ।

लेआउट फ़ाइलें

activity_main.xml - मुख्य लेआउट

<RelativeLayout xmlns:android="https://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:padding="16dp">

    <ListView
        android:id="@+id/simpleListView"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:divider="#CCCCCC"
        android:dividerHeight="1dp" />
</RelativeLayout>

list_item.xml - कस्टम आइटम लेआउट (res/layout/)

<TextView xmlns:android="https://schemas.android.com/apk/res/android"
    android:id="@+id/textView"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:padding="16dp"
    android:textSize="18sp"
    android:textColor="#333333" />

MainActivity.java

import android.os.Bundle;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import androidx.appcompat.app.AppCompatActivity;

public class MainActivity extends AppCompatActivity {
    private ListView listView;
    private String[] playersList = {
        "रोनाल्डो", "मेस्सी", "नेमार", "इस्को", "हैज़र्ड",
        "बेल", "बुस्केट्स", "इब्राहिमोविक", "बुफोन", "कैसिलास"
    };

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        listView = findViewById(R.id.simpleListView);

        // ArrayAdapter कंस्ट्रक्टर: context, layout resource, textView ID, data array
        ArrayAdapter adapter = new ArrayAdapter<>(
            this,
            R.layout.list_item,        // कस्टम लेआउट
            R.id.textView,             // लेआउट में TextView की ID
            playersList                // डेटा स्रोत
        );

        listView.setAdapter(adapter);

        // आइटम क्लिक लिस्टनर
        listView.setOnItemClickListener((parent, view, position, id) -> {
            String selectedPlayer = playersList[position];
            Toast.makeText(this, "चुना गया: " + selectedPlayer, Toast.LENGTH_SHORT).show();
        });
    }
}

ArrayAdapter के महत्वपूर्ण कंस्ट्रक्टर

// 1. सिंपल बिल्ट-इन लेआउट (android.R.layout.simple_list_item_1)
ArrayAdapter adapter = new ArrayAdapter<>(this, 
    android.R.layout.simple_list_item_1, dataList);

// 2. कस्टम लेआउट + TextView ID
ArrayAdapter adapter = new ArrayAdapter<>(this,
    R.layout.custom_item, R.id.textView, dataList);

// 3. List ऑब्जेक्ट के साथ
ArrayAdapter adapter = new ArrayAdapter<>(this,
    R.layout.custom_item, R.id.textView, new ArrayList<>(Arrays.asList(dataArray)));

डायनामिक डेटा अपडेट

// आइटम जोड़ें
adapter.add("नया खिलाड़ी");
adapter.notifyDataSetChanged();

// आइटम हटाएं
adapter.remove("हटाने वाला खिलाड़ी");
adapter.notifyDataSetChanged();

// पूरी लिस्ट बदलें
adapter.clear();
adapter.addAll(newDataList);
adapter.notifyDataSetChanged();

मॉडर्न विकल्प: RecyclerView

नए ऐप्स के लिए, RecyclerView + ListAdapter का उपयोग करें:

  • बेहतर परफॉरमेंस (ViewHolder पैटर्न)
  • बिल्ट-इन एनिमेशन (DiffUtil)
  • अधिक लचीलापन (ग्रिड, स्टैगर्ड लेआउट)
// build.gradle
implementation "androidx.recyclerview:recyclerview:1.3.0"
  1. Android में ListView को राउंडेड कॉर्नर्स के साथ कैसे बनाएं? Android में ListView को राउंडेड कॉर्नर्स के साथ कैसे बनाएं?

    Android में राउंडेड कॉर्नर्स वाला ListView बनाने का पूरा गाइड इस ट्यूटोरियल में हम सीखेंगे कि Android ऐप में ListView के चारों ओर राउंडेड कॉर्नर्स (rounded corners) कैसे लागू करें। यह UI को अधिक आकर्षक और आधुनिक बनाता है। चरण 1: नया प्रोजेक्ट बनाएं Android Studio खोलें और File → New Project चुनें।

  1. Android ऐप में पारदर्शी एक्टिविटी कैसे बनाएं? Android ऐप में पारदर्शी एक्टिविटी कैसे बनाएं?

    पारदर्शी (Translucent) एक्टिविटी बनाना यह उदाहरण दर्शाता है कि कस्टम थीम का उपयोग करके एक्टिविटी को पारदर्शी कैसे बनाएं, जिससे पिछली एक्टिविटी या होम स्क्रीन दिखती रहे। चरण 1: नया प्रोजेक्ट बनाएं Android Studio में File → New Project चुनें। चरण 2: styles.xml में पारदर्शी थीम <resources>

  1. Android ऐप में मल्टी-लेवल ExpandableListView कैसे बनाएं? Android ऐप में मल्टी-लेवल ExpandableListView कैसे बनाएं?

    परिचय यह ट्यूटोरियल दर्शाता है कि Android में ExpandableListView का उपयोग करके दो-स्तरीय (ग्रुप → चाइल्ड) सूची कैसे बनाएं। हम खेल श्रेणियों (क्रिकेट, फुटबॉल, टेनिस) और उनके खिलाड़ियों का उदाहरण बनाएंगे। आवश्यक चरण चरण 1: नया प्रोजेक्ट बनाएं Android Studio में File → New Project से नया प्रोजेक्ट बन