Monday, 13 June 2016

custome Adapter

package com.tdi.rk;

import android.app.AlertDialog;
import android.app.ProgressDialog;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.graphics.Bitmap;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.ListView;
import android.widget.TextView;
import android.widget.Toast;

import com.androidquery.AQuery;
import com.androidquery.callback.AjaxCallback;
import com.androidquery.callback.AjaxStatus;
import com.squareup.picasso.Picasso;

import org.json.JSONObject;

import java.util.List;

/**
 * Created by vips on 13-04-2016.
 */
public class StarAdapter extends BaseAdapter {

    Context context;
    List<SinglePriceListBean> bean;
    boolean isPressed = false;
    AQuery aQuery;
    ProgressDialog pd;
    ViewHolder holder = new ViewHolder();

    public StarAdapter(Context context) {
        this.context = context;

    }

    public StarAdapter(List<SinglePriceListBean> bean, Context context) {
        this.bean = bean;
        this.context = context;
    }

    @Override
    public int getCount() {
        return bean.size();
    }

    @Override
    public Object getItem(int position) {
        return bean.get(position);
    }

    @Override
    public long getItemId(int position) {
        return bean.indexOf(getItem(position));
    }

    @Override
    public void notifyDataSetChanged() {
        super.notifyDataSetChanged();
    }

    @Override
    public View getView(final int position, View convertView, ViewGroup parent) {
        //final ViewHolder holder;
        aQuery = new AQuery(context);
        pd = new ProgressDialog(context);
        pd.setMessage("removing from Star List");
        LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
        if (convertView == null) {

            convertView = inflater.inflate(R.layout.single_price, null);
            //          holder = new ViewHolder();

            holder.tv_p_nm = (TextView) convertView.findViewById(R.id.price_product_nm);
            holder.tv_p_price = (TextView) convertView.findViewById(R.id.price_product_price);
            holder.img = (ImageView) convertView.findViewById(R.id.iv_price_img);
            holder.code = (TextView) convertView.findViewById(R.id.price_product_id);
            holder.DistRate = (TextView) convertView.findViewById(R.id.price_product_DistRate);
            holder.InnerCase = (TextView) convertView.findViewById(R.id.price_product_InnerCase);
            //   holder.icUnit = (TextView) convertView.findViewById(R.id.price_product_icUnit);
            holder.MasterCase = (TextView) convertView.findViewById(R.id.price_product_MasterCase);
            //   holder.mcUnit = (TextView) convertView.findViewById(R.id.price_product_mcUnit);
            //  holder.name = (TextView) convertView.findViewById(R.id.price_product_name);
            holder.ib_star = (ImageView) convertView.findViewById(R.id.ib_star);
            holder.ib_star.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {


                    AlertDialog.Builder al = new AlertDialog.Builder(context);
                    al.setTitle("Are You sure want to remove from Star product");
                    al.setIcon(R.drawable.ic_delete);
                    al.setPositiveButton("Remove", new DialogInterface.OnClickListener() {
                        @Override
                        public void onClick(DialogInterface dialog, int which) {

                            removeData(bean.get(position).getCode());
                            removePos(position);
                            notifyDataSetChanged();
                            //bean.remove(position);
                            context.startActivity(new Intent(context, MainActivity.class));
                            // Toast.makeText(context,"product removed successfully..!",Toast.LENGTH_LONG).show();
                        }
                    });
                    al.setNegativeButton("Cancle", new DialogInterface.OnClickListener() {
                        @Override
                        public void onClick(DialogInterface dialog, int which) {
                            dialog.dismiss();
                        }
                    });
                    al.show();


                }
            });

            convertView.setTag(holder);
        } else {
            holder = (ViewHolder) convertView.getTag();
        }
        final SinglePriceListBean bean = (SinglePriceListBean) getItem(position);

        holder.tv_p_nm.setText(bean.getProductName());
        holder.tv_p_price.setText(bean.getPrice());
        Picasso.with(context).load(bean.getImages()).into(holder.img);
        holder.code.setText(bean.getCode());
        holder.DistRate.setText(bean.getDistRate());
        holder.InnerCase.setText(bean.getInnerCase());
        holder.MasterCase.setText(bean.getMasterCase());

        holder.ib_star.setBackgroundResource(R.drawable.ic_delete);

/*
        holder.ib_star.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                */
/*AlertDialog.Builder al = new AlertDialog.Builder(context);
                al.setTitle("Are You sure want to remove from Star product");
                al.setIcon(R.drawable.ic_delete);
                al.setPositiveButton("Remove", new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int which) {


                        removeData();
                        context.startActivity(new Intent(context, MainActivity.class));
                        // Toast.makeText(context,"product removed successfully..!",Toast.LENGTH_LONG).show();
                    }
                });
                al.setNegativeButton("Cancle", new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int which) {
                        dialog.dismiss();
                    }
                });
                al.show();
*//*

            }

        });
*/


        holder.img.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Bitmap bitmap = null;
                Intent i = new Intent(context, ZoomImage.class);
                i.putExtra("image", bean.getImages());
                context.startActivity(i);

            }
        });
        return convertView;
    }


    private void removePos(int position){
            bean.remove(position);
    }
    protected void removeData(String priceid) {

        final String id = (String) SP.get(context, AppConstants.PRE_LOGIN_USER_ID, "");
        // String priceid = holder.code.getText().toString();

        String urls = "http://www.rajkotkitchenware.com/rkapp/removeStar.php?userID=" + id + "&priceID=" + priceid + "&key=5a14ec5b310164f2dfe49e86b06124a";
        Log.d("price id ", "url " + urls);
        aQuery = new AQuery(context);

        aQuery.progress(pd).ajax(urls, JSONObject.class, new AjaxCallback<JSONObject>() {

            @Override
            public void callback(String url, JSONObject object, AjaxStatus status) {
                if (object != null) {

                    Toast.makeText(context.getApplicationContext(), object.optString("msg"), Toast.LENGTH_LONG).show();
                }
            }

        });
    }

    public class ViewHolder {
        TextView tv_p_nm, tv_p_price, code, DistRate, InnerCase, icUnit, MasterCase, mcUnit, name;
        ImageView img;
        ImageView ib_star;
    }
}

No comments:

Post a Comment