I have a arraye of letters (for testing), when searching for each letter in the list, it only shows the letter A And when I search for the letter A, it shows the letters A and B And if I search for a letter outside the arraye, nothing is displayed.
This is my code
public class nmd extends Activity
{ListView lstview;
EditText etSearch;
CustomList adapter;
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.nmdlist);
lstview=(ListView)findViewById(R.id.nmdlistListView1);
DisplayMetrics displayMetrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(displayMetrics);
int width = displayMetrics.widthPixels;
etSearch=(EditText)findViewById(R.id.searchView);
String[] arr={"a","b","d","e","f","g","h","i","j","ak"};
adapter = new CustomList(nmd.this, arr,width);
lstview.setAdapter(adapter);
lstview.setOnItemClickListener(new OnItemClickListener(){
public void onItemClick(AdapterView<?> parent, View view, int position, long id)
{
String selected=((TextView)view.findViewById(R.id.lstitemsTextView1)).getText().toString();
try{readjason r=new readjason();
Intent j=new Intent(nmd.this,nmdinfo.class);
j.putExtra("name",selected);
j.putExtra("id",r.readFromFile(getApplicationContext(),selected));
startActivity(j);
}catch(Exception e){
}
}
});
etSearch.addTextChangedListener(new TextWatcher() {
@Override
public void onTextChanged(CharSequence cs, int start, int before,
int count) {
String text =etSearch.getText().toString().toLowerCase(Locale.getDefault());
adapter.getFilter().filter(text);
}
@Override
public void beforeTextChanged(CharSequence s, int start, int count,
int after) {
// TODO Auto-generated method stub
}
@Override
public void afterTextChanged(Editable s) {
// TODO Auto-generated method stub
}
});
}
**Thanks for your help**