PDA

View Full Version : فیلتر کردن custom listview



leila71
سه شنبه 14 اردیبهشت 1395, 07:31 صبح
سلام من یک لیستی دارم که به این صورت اون رو پر میکنم(از دیتابیس)
حالا یک edittext هم دارم که میخوام جستجو رو انجام بدم
چیکار کنم؟
لطفا راهنمایی کنیدpublic class MainActivity extends Activity {


EditText filterproducts;
ListView listproducts;
Myjson_Parser jParser = new Myjson_Parser();


// Products
private ArrayList<String> item_code;
private ArrayList<String> descrproduct;
private ArrayList<String> rate_item;
private ArrayList<String> unit;


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


filterproducts = (EditText) findViewById(R.id.filterproducts);
listproducts = (ListView) findViewById(R.id.listproducts);


new JSONParseProducts().execute();


}


class JSONParseProducts extends AsyncTask<String, Void, ArrayList<String>> {
private ProgressDialog pDialog;
JSONArray mitem_code;
JSONArray mdescr;
JSONArray mrate_item;
JSONArray munit;


@Override
protected void onPreExecute() {
super.onPreExecute();
pDialog = new ProgressDialog(MainActivity.this);
pDialog.setMessage("در حال دریافت اطلاعات ...");
pDialog.setIndeterminate(false);
pDialog.setCancelable(true);
pDialog.show();


}


@Override
protected ArrayList<String> doInBackground(String... args) {


JSONObject object = jParser.getJSONFromUrl("http://10.0.2.2/products.php");
Log.d("TAG", "object :" + object.toString());


try {
mitem_code = object.getJSONArray("item_code");
mdescr = object.getJSONArray("descr");
mrate_item = object.getJSONArray("rate_item");
munit = object.getJSONArray("unit");


} catch (JSONException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}


int NumOfObjects = mitem_code.length();
Log.d("TAG", "NumOfObjects :" + NumOfObjects);


return null;


}


protected void onPostExecute(ArrayList<String> we) {
pDialog.dismiss();


item_code = new ArrayList<String>();
descrproduct = new ArrayList<String>();
rate_item = new ArrayList<String>();
unit = new ArrayList<String>();


ArrayList<Product> arrayOfData = new ArrayList<Product>();


Context context = MainActivity.this;
ProductAdapter adapter = new ProductAdapter(context, arrayOfData);


listproducts.setAdapter(adapter);


if (mitem_code != null) {


int len = mitem_code.length();
Log.d("TAG", "length :" + len);


for (int i = 0; i < len; i++) {


try {
item_code.add(mitem_code.get(i).toString());
descrproduct.add(mdescr.get(i).toString());
rate_item.add(mrate_item.get(i).toString());
unit.add(munit.get(i).toString());


String myitemcode = item_code.get(i);
String mydescr = descrproduct.get(i);
String myrate_item = rate_item.get(i);
String myunit = unit.get(i);


Product Data = new Product(myitemcode, mydescr, myrate_item, myunit);
adapter.add(Data);


} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
}