MainActivity.java
package com.cfsuman.androidtutorials;
import android.os.Bundle;
import android.app.Activity;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.ListView;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// Get the widgets reference from XML layout
Button button = findViewById(R.id.button);
ListView listView = findViewById(R.id.listView);
// Initializing a new String Array
String[] fruits = new String[] {
"Abiu",
"Batuan",
"Black Mulberry",
"Cape Gooseberry",
"Desert banana",
"Eastern May Hawthorn",
"Fibrous Satinash",
"Gooseberry",
"Hairless rambutan",
"Illawarra Plum",
"Jelly Palm",
"Kepel fruit",
"Little gooseberry tree",
"Mammee Apple",
"Nagami Kumquat",
"Oil Palm",
"Peanut butter fruit",
"Queensland Ebony",
"Red Mulberry",
"Sageretia",
"Tahitian apple",
"Ugni",
"Vanilla",
"Watermelon",
"Yellow Granadilla",
"Zig Zag Vine"
};
// Create a List from String Array elements
List<String> fruits_list = new ArrayList<String>
(Arrays.asList(fruits));
// Create an ArrayAdapter from List
ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>
(
this,
android.R.layout.simple_list_item_1,
fruits_list
);
// DataBind ListView with items from ArrayAdapter
listView.setAdapter(arrayAdapter);
// Smooth scroll to list view bottom
button.setOnClickListener(v ->
// Position is zero based index
listView.smoothScrollToPosition(
arrayAdapter.getCount()-1
)
);
}
}
activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#DCDCDC"
android:padding="24dp">
<Button
android:id="@+id/button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="ListView Scroll To Bottom"
android:textAllCaps="false"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<ListView
android:id="@+id/listView"
android:layout_width="0dp"
android:layout_height="0dp"
android:layout_marginTop="16dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/button" />
</androidx.constraintlayout.widget.ConstraintLayout>


- How to change EditText border color in Android
- How to dismiss AlertDialog in Android
- How to create a Yes/No AlertDialog in Android
- How to set Spinner alternate item color in Android
- How to disable an item in Spinner in Android
- How to change ListView text size in Android
- How to add border between items in a ListView in Android
- How to set ListView item click effect in Android
- How to change ListView selected item background color in Android