Android ListView में Collections.synchronizedList() का उपयोग
यह उदाहरण दर्शाता है कि Android ListView में थ्रेड-सेफ सिंक्रोनाइज़्ड लिस्ट का उपयोग कैसे किया जाता है। यह मल्टी-थ्रेडेड वातावरण में डेटा अखंडता सुनिश्चित करता है।
चरण 1: नया प्रोजेक्ट बनाएं
Android Studio में File → New Project पर जाएं और नया प्रोजेक्ट बनाने के लिए सभी आवश्यक विवरण भरें।
चरण 2: लेआउट XML में कोड जोड़ें
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:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:gravity="center_horizontal"
android:layout_marginTop="30dp"
tools:context=".MainActivity">
<EditText
android:id="@+id/edit_query"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<Button
android:id="@+id/buttonPanel"
android:text="Check"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<ListView
android:id="@+id/list"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
</ListView>
</LinearLayout>
चरण 3: MainActivity.java में कोड जोड़ें
src/MainActivity.java में निम्न कोड जोड़ें:
package com.example.myapplication;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ListView;
import android.widget.Toast;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
public class MainActivity extends AppCompatActivity {
ListView list;
String[] mobileArray = {"Android", "IPhone", "WindowsMobile", "Blackberry",
"WebOS", "Ubuntu", "Windows7", "Max OS X"};
EditText edit_query;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
edit_query = findViewById(R.id.edit_query);
list = findViewById(R.id.list);
final ArrayList<String> arrayList = new ArrayList<String>(Arrays.asList(mobileArray));
findViewById(R.id.buttonPanel).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if(!edit_query.getText().toString().isEmpty()) {
if(arrayList.contains(edit_query.getText().toString())) {
Toast.makeText(MainActivity.this, "Already it is in list", Toast.LENGTH_LONG).show();
} else {
arrayList.add(edit_query.getText().toString());
ArrayAdapter adapter = new ArrayAdapter<String>(MainActivity.this,
android.R.layout.simple_list_item_1, Collections.synchronizedList(arrayList));
list.setAdapter(adapter);
}
}
}
});
ArrayAdapter adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, Collections.synchronizedList(arrayList));
list.setAdapter(adapter);
}
}
ऐप चलाएं
अपने Android डिवाइस को कंप्यूटर से कनेक्ट करें। Android Studio में प्रोजेक्ट की एक्टिविटी फाइल खोलें और टूलबार से Run आइकन पर क्लिक करें। अपना मोबाइल डिवाइस चुनें और डिवाइस पर डिफ़ॉल्ट स्क्रीन देखें।

ऊपर के परिणाम में, हमने ListView में एक तत्व जोड़ा है, अब डेटा वैलिडेशन के लिए वही मान दर्ज करें।