Breaking

Thursday 18 April 2019

Android ListView | Android Tutorial


Android ListView

Android ListView is a view which contains the gathering of things and shows in a scrollable rundown. ListView is executed by bringing in android.widget.ListView class. ListView is a default scrollable which does not utilize other parchment see.



ListView utilizes Adapter classes which include the substance from information source, (for example, string cluster, exhibit, database and so forth) to ListView. Connector spans information between an AdapterViews and different Views (ListView, ScrollView and so on).
Example Of ListView 

Let's implement a simple listview example.

Structure of listview project


activity_main.xml




First we need to drag and drop ListView component from palette to activity_main.xml file.

File :- activity_main.xml


<?xml version="1.0" encoding="utf-8"?> 
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    tools:context="listview.example.com.listview.MainActivity">  
 
    <ListView 
        android:id="@+id/listView" 
        android:layout_width="match_parent" 
        android:layout_height="fill_parent" 
         /> 
</android.support.constraint.ConstraintLayout>


Create an additional mylist.xml file in layout folder which contains view components displayed in listview.

mylist.xml

File :- mylist.xml


    <?xml version="1.0" encoding="utf-8"?> 
     
    <TextView xmlns:android="http://schemas.android.com/apk/res/android" 
        android:id="@+id/textView" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:text="Medium Text" 
        android:textStyle="bold" 
        android:textAppearance="?android:attr/textAppearanceMedium" 
        android:layout_marginLeft="10dp" 
        android:layout_marginTop="5dp" 
        android:padding="2dp" 
        android:textColor="#4d4d4d" 
         /> 



Now place the list of data in strings.xml file by creating string-array.

string.xml


File :- string.xml


    <resources> 
        <string name="app_name">ListView</string> 
        <string-array name="array_technology"> 
            <item>Android</item> 
            <item>Java</item> 
            <item>Php</item> 
            <item>Hadoop</item> 
            <item>Sap</item> 
            <item>Python</item> 
            <item>Ajax</item> 
            <item>C++</item> 
            <item>Ruby</item> 
            <item>Rails</item> 
            <item>.Net</item> 
            <item>Perl</item> 
        </string-array> 
    </resources> 


Activity Class

In java class we need to add adapter to listview using setAdapter() method of listview.

File :-     MainActivity.xml


package listview.example.com.listview; 
 
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.TextView; 
import android.widget.Toast; 
 
public class MainActivity extends AppCompatActivity { 
    ListView listView; 
    TextView textView; 
    String[] listItem; 
    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
        super.onCreate(savedInstanceState); 
        setContentView(R.layout.activity_main); 
 
        listView=(ListView)findViewById(R.id.listView); 
        textView=(TextView)findViewById(R.id.textView); 
        listItem = getResources().getStringArray(R.array.array_technology); 
        final ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, 
                android.R.layout.simple_list_item_1, android.R.id.text1, listItem); 
        listView.setAdapter(adapter); 
 
        listView.setOnItemClickListener(new AdapterView.OnItemClickListener() { 
            @verride 
            public void onItemClick(AdapterView<?> adapterView, View view, int position, long l) { 
                // TODO Auto-generated method stub 
                String value=adapter.getItem(position); 
                Toast.makeText(getApplicationContext(),value,Toast.LENGTH_SHORT).show(); 
 
            } 
        }); 
    } 
}


OutPut :-


No comments:

Post a Comment