Menampilkan AutoCompleteTextView

AutoCompleteTextView adalah view yang mirip dengan 'EditText' (memang sebenarnya adalah subclass dari 'EditText'), bedanya adalah menampilkan daftar autocomplete secara otomatis saat user mengetik. Berikut adalah latihan menggunakan 'AutoCompleteTextView' untuk secara otomatis membantu user melengkapi pengisian teks.

1. Kita buat project baru dan kita beri nama "ViewDasar3".

2. Kita modifikasi file layout "activity_main.xml" seperti berikut:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/activity_main"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:orientation="vertical"
tools:context="id.co.blogspot.diansano.viewdasar3.MainActivity">

<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Nama Pahlawan" />

<AutoCompleteTextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/txtPahlawan"/>
</LinearLayout>
3. Kita modifikasi dan tambahkan file "MainActivity.java" seperti berikut:
package id.co.blogspot.diansano.viewdasar3;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.ArrayAdapter;
import android.widget.AutoCompleteTextView;

public class MainActivity extends AppCompatActivity {

String[] pahlawan = {
"Soekarno",
"Diponegoro",
"Patimura",
"Cut Nyak Dien",
"Pangeran Antasari",
"I Gusti Ngurah Rai",
"Komodor Yos Soedarso",
"KH. Agus Salim",
"Ahmad Yani",
"R.A. Kartini",
"Moh. Hatta",
};

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

ArrayAdapter adapter = new ArrayAdapter(this,
android.R.layout.simple_dropdown_item_1line, pahlawan);

AutoCompleteTextView textView = (AutoCompleteTextView)
findViewById(R.id.txtPahlawan);

textView.setThreshold(3);
textView.setAdapter(adapter);
}
}
4. Jalankan di emulator Android Studio.

AutoCompleteTextView


Penjelasan:

Pertama kita membuat array 'String' yang berisi daftar nama-nama pahlawan:
String[] pahlawan = {
"Soekarno",
"Diponegoro",
"Patimura",
"Cut Nyak Dien",
"Pangeran Antasari",
"I Gusti Ngurah Rai",
"Komodor Yos Soedarso",
"KH. Agus Salim",
"Ahmad Yani",
"R.A. Kartini",
"Moh. Hatta",
};

Object 'ArrayAdapter' akan me-manage array string tersebut yang akan ditampilkan oleh 'AutoCompleteTextView'. dalam contoh sebelumnya, kita men-set 'AutoCompleteTextView' untuk ditampilkan dalam bentuk 'simple_dropdown_item_1line':
ArrayAdapter adapter = new ArrayAdapter(this,
android.R.layout.simple_dropdown_item_1line, pahlawan);
Method 'setThreshold()' akan men-set jumlah karakter minimum yang harus diketikkan user sebelum memunculkan menu dropdown:
textView.setThreshold(3);
Daftar autocomplete yang ditampilkan akan didapat dari object 'ArrayAdapter':
textView.setAdapter(adapter);

No comments: