Android Simple ListView - JAVA


Android ListView is a view. That is contain called ListItems. The ListView displays the ListItems in vertical. If ListView contains many items it will auto scrollable.  To insert the list items in ListView  have to use ArrayAdapter or ListAdapter . 



ListView Example  - simple_list_item_1



It's very easy to populate ListView in android. Let's see the steps.

Where will I find the ListView in android Studio ?
 In Design mood of android Studio you will see the ListView in the palette also in Containers. To clear See the below image.

ListView Position in Android Studio


Step 1:  
In mine just drag and drop the ListView from containers to your app. Will see a demo list item. It will only shows to developer  not in emulator as a user. Here after drop the ListView in  activity_main.xml  the code is.


 activity_main.xml

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context="com.example.hp.symonapps.MainActivity">


    <ListView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/listView"
        android:layout_alignParentTop="true"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="77dp" />




</RelativeLayout>


Now have to declare  a String Array in MainActivity.java 
Here area the code of String Array which I declare with the name of my some friends. That's why I named it to friends.

Declare  String Array in MainActivity.java 
    //declare a string array
    String[] friends ={
            "Melisa",
            "Sazzad",
            "Nasir",
            "Morshed",
            "Jewel",
            "Riyad",
            "Mohiuddin",
            "Ellysa",
            "Sharmin",
            "Stiv",
            "Idynha Paulo",
            "Mahmuda"
    };

To see where I declare the String array See the below image.

String Array in Android



Haha! We have reached at the final  task.  Just need to create a ListView object and  Then cast the listView.  After theat use the ArrayAdapter  to include the String in LIstView.  Can you remember what was the id of our ListView in activity_main.xml ?

ListView id

All right the id is  listView.


Create ListView object and cast then ArrayAdapter   in  MainActivity.java
        //Create ListView object and cast the listView
        ListView listView = (ListView) findViewById(R.id.listView);

        //create array adapter then set the adapter with listView
        ArrayAdapter adapter = new ArrayAdapter(this, android.R.layout.simple_list_item_1,friends);
        listView.setAdapter(adapter);



Here area the full  MainActivity.java


package com.example.hp.symonapps;

        import android.content.Intent;
        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.ImageView;
        import android.widget.ListView;
        import android.widget.Toast;


public class MainActivity extends AppCompatActivity {

    //declare a string array
    String[] friends ={
            "Melisa",
            "Sazzad",
            "Nasir",
            "Morshed",
            "Jewel",
            "Riyad",
            "Mohiuddin",
            "Ellysa",
            "Sharmin",
            "Stiv",
            "Idynha Paulo",
            "Mahmuda"
    };


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

        //Create ListView object and cast the listView
        ListView listView = (ListView) findViewById(R.id.listView);

        //create array adapter then set the adapter with listView
        ArrayAdapter adapter = new ArrayAdapter(this, android.R.layout.simple_list_item_1,friends);
        listView.setAdapter(adapter);



    } //onCreate end


}



Great!! Okay Now Run the App  The Strings are shown as LIstView will Scrollable.







On next I will write another Article how to take click on Item And show the Toast message. Till then Stay happy!


For that you have to create activities. Here I've created 2 activities names second and nasir.

To take click on item just need the following code in MainActivity.java

        //take click on listview item
        listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {

                String friend = (String) adapterView.getItemAtPosition(i);
                Toast.makeText(view.getContext(), "Hello " +friend+ " !", Toast.LENGTH_SHORT).show();

                if(i == 1){
                    Intent s = new Intent(view.getContext(),second.class);
                    startActivity(s);
                }

                     //another way to go to the activity
                if(friend == "Nasir"){
                    Intent n = new Intent(view.getContext(),nasir.class);
                    startActivity(n);
                }


            }
        });

Comments