Hi
I use autocompletetextview with SimpleCursorAdapter to get data from sqlite. I'd like to get its drop down list started by the entered key. In my autocompletetextview, the list is not shown or filtered by input text.
eg, If user enter "an", all text started with "an" will be seen in this list.
In Java
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.new);
txtPNo = (AutoCompleteTextView) findViewById(R.id.txtSTo);
mDbHelper = new DBAdapter(this);
mDbHelper.open();
SimpleCursorAdapter notes = fillToData();
txtPNo.setAdapter(notes);
}
private SimpleCursorAdapter fillToData() {
Cursor c = mDbHelper.getName();
startManagingCursor(c);
String[] from = new String[] {DBAdapter.Name,DBAdapter.No1};
int[] to = new int[] {R.id.txtName,R.id.txtNo1};
Log.d(TAG, "cursor.getCount()=" + c.getCount());
SimpleCursorAdapter notes =
new SimpleCursorAdapter(this, R.layout.autocomplete, c, from,
to);
return notes;
}
In new.xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
xmlns:android="http://schemas.android.com/apk/res/android"
android:background="#ffffff"
>
<AutoCompleteTextView android:id="@+id/txtSTo"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:textSize="18sp"
android:textColor="#000000"
android:hint="To"
android:completionThreshold="1"
android:selectAllOnFocus="true"
android:layout_alignParentTop = "true"
android:layout_alignParentLeft="true"/>
</RelativeLayout>
In autocomplete.xml
<?xml version="1.0" encoding="utf-8"?>
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent" android:layout_height="wrap_content"
android:stretchColumns="0" android:padding="5dp">
<TableRow android:padding="5dp">
<LinearLayout android:orientation="vertical">
<TextView android:id="@+id/txtName"
xmlns:android="http://schemas.android.com/apk/res/android"
android:textColor="#000000"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
<TextView android:id="@+id/txtNo1"
xmlns:android="http://schemas.android.com/apk/res/android"
android:textColor="#000000"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
</LinearLayout>
</TableRow>
</TableLayout>
How to implement to get just filtered list?