MMNNNM
یک شنبه 02 شهریور 1393, 00:30 صبح
سلام دوستان .
من برای لیست ویو که متصل شده به دیتابیس و اطلاعاتش رو از دیتابیس میگیره جست و جو گذاشتم ولی درست کار نمی کنه !!
مثلا من 5تا آیتم دارم (به ترتیب )
1:mohammad
2:reza
3.mohammadreza
4:ali
5:alireza
خب من وقتی کلمه ali رو وارد می کنم فقط mohammad رو نشون میده
و وقتی مثلا mohammad رو میزنم فقط mohammad و reza رو نشونم میده .. یعنی وقتی 2 تا mohammad داریم تو لیست به همین اندازه 2 تا اولی رو نشون میده !!!
EditText ed = (EditText) findViewById(R.id.edt);
Button btnFav = (Button) findViewById(R.id.btnFav);
btnFav.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View arg0) {
Intent N = new Intent(MainActivity.this, fav.class);
startActivity(N);
}
});
MyDatabase = new MyDatabase(this);
mydb = MyDatabase.getReadableDatabase();
Cursor c = mydb.rawQuery("select id,text,cat,fav from bank ", null);
int id[] = new int[c.getCount()];
String text[] = new String[c.getCount()];
String cat[] = new String[c.getCount()];
int fav[] = new int[c.getCount()];
int i = 0;
if (c.moveToFirst()) {
do {
id[i] = c.getInt(0);
text[i] = c.getString(1);
cat[i] = c.getString(2);
fav[i] = c.getInt(3);
i++;
}
while (c.moveToNext());
c.close();
mydb.close();
}
listview = (ListView) findViewById(R.id.listView1);
adapter = new MyAdapter(this, text, cat, fav, id);
listview.setAdapter(adapter);
listview.setTextFilterEnabled(true);
ed.addTextChangedListener(new TextWatcher() {
@Override
public void onTextChanged(CharSequence arg0, int arg1, int arg2, int arg3) {
}
@Override
public void beforeTextChanged(CharSequence arg0, int arg1, int arg2,
int arg3) {
}
@Override
public void afterTextChanged(Editable arg0) {
adapter.getFilter().filter(arg0.toString());
}
});
adapter.notifyDataSetChanged();
}
}
من برای لیست ویو که متصل شده به دیتابیس و اطلاعاتش رو از دیتابیس میگیره جست و جو گذاشتم ولی درست کار نمی کنه !!
مثلا من 5تا آیتم دارم (به ترتیب )
1:mohammad
2:reza
3.mohammadreza
4:ali
5:alireza
خب من وقتی کلمه ali رو وارد می کنم فقط mohammad رو نشون میده
و وقتی مثلا mohammad رو میزنم فقط mohammad و reza رو نشونم میده .. یعنی وقتی 2 تا mohammad داریم تو لیست به همین اندازه 2 تا اولی رو نشون میده !!!
EditText ed = (EditText) findViewById(R.id.edt);
Button btnFav = (Button) findViewById(R.id.btnFav);
btnFav.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View arg0) {
Intent N = new Intent(MainActivity.this, fav.class);
startActivity(N);
}
});
MyDatabase = new MyDatabase(this);
mydb = MyDatabase.getReadableDatabase();
Cursor c = mydb.rawQuery("select id,text,cat,fav from bank ", null);
int id[] = new int[c.getCount()];
String text[] = new String[c.getCount()];
String cat[] = new String[c.getCount()];
int fav[] = new int[c.getCount()];
int i = 0;
if (c.moveToFirst()) {
do {
id[i] = c.getInt(0);
text[i] = c.getString(1);
cat[i] = c.getString(2);
fav[i] = c.getInt(3);
i++;
}
while (c.moveToNext());
c.close();
mydb.close();
}
listview = (ListView) findViewById(R.id.listView1);
adapter = new MyAdapter(this, text, cat, fav, id);
listview.setAdapter(adapter);
listview.setTextFilterEnabled(true);
ed.addTextChangedListener(new TextWatcher() {
@Override
public void onTextChanged(CharSequence arg0, int arg1, int arg2, int arg3) {
}
@Override
public void beforeTextChanged(CharSequence arg0, int arg1, int arg2,
int arg3) {
}
@Override
public void afterTextChanged(Editable arg0) {
adapter.getFilter().filter(arg0.toString());
}
});
adapter.notifyDataSetChanged();
}
}