Last active
January 22, 2016 10:41
-
-
Save tassioauad/6565710 to your computer and use it in GitHub Desktop.
ListView using ArrayAdapter and search feature
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?xml version="1.0" encoding="utf-8"?> | |
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" | |
android:layout_width="fill_parent" | |
android:layout_height="fill_parent" | |
android:orientation="vertical" > | |
<EditText android:id="@+id/inputSearch" | |
android:layout_width="fill_parent" | |
android:layout_height="wrap_content" | |
android:hint="Search products.." | |
android:inputType="textVisiblePassword"/> | |
<ListView | |
android:id="@+id/list_view" | |
android:layout_width="fill_parent" | |
android:layout_height="wrap_content" /> | |
</LinearLayout> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?xml version="1.0" encoding="utf-8"?> | |
<manifest xmlns:android="http://schemas.android.com/apk/res/android" | |
package="com.tassioauad.listviewsearch" | |
android:versionCode="1" | |
android:versionName="1.0" > | |
<uses-sdk | |
android:minSdkVersion="7" | |
android:targetSdkVersion="16" /> | |
<uses-permission android:name="android.permission.READ_CONTACTS" /> | |
<application | |
android:allowBackup="true" | |
android:icon="@drawable/ic_launcher" | |
android:label="@string/app_name" | |
android:theme="@style/AppTheme" > | |
<activity | |
android:name="com.tassioauad.listviewsearch.MainActivity" | |
android:label="@string/app_name" > | |
<intent-filter> | |
<action android:name="android.intent.action.MAIN" /> | |
<category android:name="android.intent.category.LAUNCHER" /> | |
</intent-filter> | |
</activity> | |
</application> | |
</manifest> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?xml version="1.0" encoding="utf-8"?> | |
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" | |
android:orientation="vertical" | |
android:layout_width="match_parent" | |
android:layout_height="match_parent"> | |
<TextView android:id="@+id/product_name" | |
android:layout_width="fill_parent" | |
android:layout_height="wrap_content" | |
android:padding="10dip" | |
android:textSize="16dip" | |
android:textStyle="bold"/> | |
</LinearLayout> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
package com.tassioauad.listviewsearch; | |
import android.app.Activity; | |
import android.os.Bundle; | |
import android.text.Editable; | |
import android.text.TextWatcher; | |
import android.view.Menu; | |
import android.widget.ListView; | |
import android.widget.EditText; | |
import android.widget.ArrayAdapter; | |
import java.util.ArrayList; | |
import java.util.HashMap; | |
public class MainActivity extends Activity { | |
private ListView listView; | |
ArrayAdapter<String> adapter; | |
EditText editText; | |
// ArrayList for Listview | |
ArrayList<HashMap<String, String>> productList; | |
@Override | |
protected void onCreate(Bundle savedInstanceState) { | |
super.onCreate(savedInstanceState); | |
setContentView(R.layout.activity_main); | |
String strings[] = {"Dell Inspiron", "HTC One X", "HTC Wildfire S", "HTC Sense", "HTC Sensation XE", | |
"iPhone 4S", "Samsung Galaxy Note 800", | |
"Samsung Galaxy S3", "MacBook Air", "Mac Mini", "MacBook Pro"}; | |
listView = (ListView) findViewById(R.id.list_view); | |
editText = (EditText) findViewById(R.id.inputSearch); | |
// Adding items to listview | |
adapter = new ArrayAdapter<String>(this, R.layout.list_item, R.id.product_name, strings); | |
listView.setAdapter(adapter); | |
editText.addTextChangedListener(new TextWatcher() { | |
@Override | |
public void beforeTextChanged(CharSequence charSequence, int i, int i2, int i3) { | |
} | |
@Override | |
public void onTextChanged(CharSequence charSequence, int i, int i2, int i3) { | |
MainActivity.this.adapter.getFilter().filter(charSequence); | |
} | |
@Override | |
public void afterTextChanged(Editable editable) { | |
} | |
}); | |
} | |
@Override | |
public boolean onCreateOptionsMenu(Menu menu) { | |
getMenuInflater().inflate(R.menu.main, menu); | |
return true; | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment