Wie werden Werte festgelegt, nachdem die Modellklasse für die globale ArrayList verwendet wurde?

Ich habe eine Modellklasse erstellt, in der mein Produktname, mein Preis und meine Menge gespeichert werden. Anschließend hänge ich sie an eine andere @ aFragment und versuche es in meinem @ anzuzeigTextView. Leider mit demArrayList Ich kann die Position der Gegenstände nicht ermitteln. Das Folgende ist mein Code-Schnipsel. Ich brauche Hilfe

Modelclass Arr_Model.Java

public class Arr_Model {

    private String BRAND_NAME;
    private String BRNAD_PRICE;
    private String QTY ;

    public Arr_Model(){}

    public String getBRAND_NAME() {
        return BRAND_NAME;
    }

    public String getQTY() {
        return QTY;
    }

    public void setBRAND_NAME(String BRAND_NAME) {
        this.BRAND_NAME = BRAND_NAME;
    }

    public void setBRNAD_PRICE(String BRNAD_PRICE) {
        this.BRNAD_PRICE = BRNAD_PRICE;
    }

    public void setQTY(String QTY) {
        this.QTY = QTY;
    }

    public String getBRNAD_PRICE() {
        return BRNAD_PRICE;
    }
}

Hier bekomme ich die Werte aus der Antwort und speichere sie inarraylist

ProductDetail.java

1) Zuerst erhalte ich Daten von der Antwort, es ist Produktname und sein Preis

class LoadAlbums erweitert AsyncTask >> {/ ** * Vor dem Start des Hintergrundthreads Statusdialog anzeigen * * /

@Override
protected void onPreExecute() {
    super.onPreExecute();
    pDialog = new ProgressDialog(All_Product_Details.this.getActivity());
    pDialog.setMessage("Loading...");
    pDialog.setIndeterminate(true);
    pDialog.setCancelable(false);
    pDialog.show();
}
protected ArrayList<HashMap<String,String>> doInBackground(String... args) {

    ServiceHandler sh = new ServiceHandler();
    String jsonStr = sh.makeServiceCall(USER_URL, ServiceHandler.GET);
    Log.d("Response: ", "> " + jsonStr);

    if (jsonStr != null) {
        try {


                JSONObject jsonObj = new JSONObject(jsonStr);
                JSONObject pname = jsonObj.getJSONObject(PRODUCT_MAIN);
                System.out.println("Jsonobject product>>" + pname);
                JSONArray sizes = new JSONArray();
                sizes = pname.getJSONArray("attributes");
                for (int j = 0; j < sizes.length(); j++) {
                    JSONObject jsonnewtwo = sizes.getJSONObject(j);
                    option = jsonnewtwo.getJSONArray("options");
                    System.out.println("Option---" + option);

                }
                System.out.println("Attribute size" + sizes);
                user_name = pname.getString(USER_NAME);
                prod_price = pname.getString(PRODUCT_PRICE);
                prod_desc = pname.getString(PRODUCT_DESC);


        } catch (JSONException e) {
            e.printStackTrace();
        }
    } else {
        Log.e("ServiceHandler", "Couldn't get any data from the url");
    }
    return null;
}

protected void onPostExecute(ArrayList<HashMap<String,String>> result) {
    super.onPostExecute(result);

    if (pDialog.isShowing())
        pDialog.dismiss();
    if(user_name.equals(""))
    {
        uname.setText("Not Available");
    }
    else
    {
        uname.setText(user_name);
    }

    if(prod_price.equals(""))
    {
        pprice.setText("Not Available");
    }
    else
    {
        pprice.setText(dollars+prod_price);
    }

    if(prod_desc.equals(""))
    {
        general_desc.setText("Not Available");
    }
    else
    {
        general_desc.setText(Html.fromHtml(prod_desc).toString());
    }

2) dann erhöhe ich die Produktmenge und klicke auf "In den Warenkorb", dann auf "In den Warenkorb". Ich speichere Daten in der Arrayliste.

 btn_add_to_cart.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View view) {


                    cartincrement();
                    productnams = GenericUtility.getStringFromSharedPrefsForKey("selected_prodname", getActivity());
                    //System.out.println("Seleced user name=-=-=-=-=-=-==-=" + productnams);
                    productprc = GenericUtility.getStringFromSharedPrefsForKey("selected_prodprc", getActivity());
                    //System.out.println("Seleced prodprice=-=-=-=-=-=-==-=" + productprc);
                    Arr_Model product = new Arr_Model();
                    product.setBRAND_NAME(user_name);
                    product.setBRNAD_PRICE(prod_price);
                    product.setQTY(_value.getText().toString());
                    productArraylist.add(product);

                    System.out.println("TEst--" + productArraylist.get(0).getBRAND_NAME());
                }
            });
            //System.out.println("Test--" + productArraylist.get(0).getBRAND_NAME());

            mBTIncrement.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View view) {
                    increment();

                }
            });

            _decrease.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View view) {

                    decrement();
                }
            });

3) dann klicke ich auf das Warenkorbsymbol, um zu sehen, welchen Artikel ich mit seiner Menge hinzugefügt habe

relcart.setOnClickListener(new View.OnClickListener() {
                    @Override
                    public void onClick(View view) {

                        _value.setText("1");
                        Add_to_cart tf = new Add_to_cart();
                        android.support.v4.app.FragmentManager fm = getFragmentManager();
                        android.support.v4.app.FragmentTransaction ft = fm.beginTransaction();
                        ft.replace(R.id.frame_container, tf);
                        ft.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_FADE);
                        ft.addToBackStack(null);
                        ft.commit();
                    }
                });

            }

4) jetzt letzter Schritt zum Anzeigen von Elementen in der Listenansicht, zum nächsten Fragment

public class Add_to_cart extends Fragment {

    private Button continue_shopping;
    private Button checkout;
    ListView list;
    private TextView _decrease,mBTIncrement,_value;
    private CustomListAdapter adapter;
    private ArrayList<String> alst;
    private ArrayList<String> alstprc;
    private String bname;
    private ArrayList<Arr_Model> productArraylist;


    public Add_to_cart(){}


    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
                             Bundle savedInstanceState) {

        final View rootView = inflater.inflate(R.layout.list_view_addtocart, container, false);

       productArraylist = All_Product_Details.productArraylist;
        // alst=new ArrayList<String>();
       // Bundle bundle = this.getArguments();
       // alst = bundle.getStringArrayList("prodnam");
        //consts.arr = new ArrayList<String>();
        //consts.arr = alst;
       // System.out.println("NAM--" + productArraylist);

       // Bundle bundle1 = this.getArguments();
       // alstprc = bundle1.getStringArrayList("prodprc");




/*
        adapter = new CustomListAdapter(getActivity(),alst);
        list=(ListView)rootView.findViewById(R.id.list_addtocart);
        list.setAdapter(adapter);
        adapter.notifyDataSetChanged();
       list.setOnItemClickListener(new AdapterView.OnItemClickListener() {

            @Override
            public void onItemClick(AdapterView<?> parent, View view,
                                    int position, long id) {


            }
        });*/


        return rootView;
    }

    public class CustomListAdapter extends BaseAdapter {

        private Context context;
        private ArrayList<Arr_Model> listData;
        //private AQuery aQuery;

        String dollars="\u0024";


        public CustomListAdapter(Context context,ArrayList<Arr_Model> listData) {
            this.context = context;
            this.listData=listData;
            // aQuery = new AQuery(this.context);
        }

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

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

        @Override
        public long getItemId(int position) {
            return position;
        }

        @Override
        public View getView(final int position, View convertView, ViewGroup parent) {
            ViewHolder holder;
            if (convertView == null) {
                holder = new ViewHolder();
                convertView = LayoutInflater.from(getActivity()).inflate(R.layout.list_item_addtocart, null);
                holder.txtproname = (TextView) convertView.findViewById(R.id.proname_addtocart);
                holder.txtprofilecast = (TextView) convertView.findViewById(R.id.proprice_addtocart);

                _decrease = (TextView)convertView.findViewById(R.id.minuss_addtocart);
                mBTIncrement = (TextView)convertView.findViewById(R.id.plus_addtocart);
                _value = (EditText)convertView.findViewById(R.id.edt_procount_addtocart);

                convertView.setTag(holder);
            }else{
                holder = (ViewHolder) convertView.getTag();
            }


            mBTIncrement.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View view) {
                    increment();
                }
            });

            _decrease.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View view) {

                    decrement();
                }
            });

           /* for(int i=0;i<productArraylist.size();i++)
            {
                holder.txtproname.setText(productArraylist.get(0));
            }

            holder.txtprofilecast.setText(dollars+alstprc.get(position));*/
            // aQuery.id(holder.propic).image(listData.get(position).get(TAG_IMAGE),true,true,0,R.drawable.ic_launcher);

            return convertView;
        }
        class ViewHolder{
            ImageView propic;
            TextView txtproname;
            TextView txtprofilecast;

        }

Antworten auf die Frage(6)

Ihre Antwort auf die Frage