Home »
Android
Android - List view - setOnItemClickListener
Android - List view - setOnItemClickListener - In this series, we are going to learn about the click Listeners in android and how to use them?
Submitted by Manu Jemini, on January 26, 2018
Below is an example of how to use this technique in List Items. To show that this works, I have created a simple ListView which have a text view.
Image source: https://www.android-examples.com/wp-content/uploads/2016/02/after-delete.png
Here, if a user presses the Item in the list. So how this is works? We have implemented a function which will be called whenever the button gets hits.
list.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView <?> parent, View view, int position, long id) {
Toast.makeText(MainActivity.this, items.get(position)+"", Toast.LENGTH_SHORT).show();
}
});
With the above function, you need to put your code inside onItemClick block.
Java file:
package com.example.vikramdiwakar.myapplication;
import android.support.v7.app.AppCompatActivity;
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 java.util.ArrayList;
public class MainActivity extends AppCompatActivity {
ListView list;
ArrayList<String> items;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main_list);
list = (ListView) findViewById(R.id.list);
items = new ArrayList<String>();
items.add("ABHISHEK SHARMA");
items.add("MANU JEMINI");
ArrayAdapter<String> itemsAdapter =
new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, items);
list.setAdapter(itemsAdapter);
list.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
Toast.makeText(MainActivity.this, items.get(position)+"", Toast.LENGTH_SHORT).show();
}
});
}
}
XML file:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="match_parent">
<ListView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/list"
android:layout_gravity="center_horizontal" />
</LinearLayout>
Menifest file:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.vikramdiwakar.myapplication">
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
Output