mercredi 16 décembre 2015

Saving data inside custom adapter getView method

First of all, thank you for reviewing my question.

I have set a LongClickListener to a view inside my custom adapter's getView() and when the user Longpress it will add a textview to the imageview. The code is working fine but i don't know how to save this changes when the user exits and enters the app again. i tried SharedPreferences and it didn't work. below is my code;

@Override
    public View getView(final int position, View view, ViewGroup parent) {

        if (view == null) {
            holder = new ViewHolder();
            view = inflater.inflate(R.layout.gridview_item, null);
            // Locate the ImageView in gridview_item.xml
            holder.image = (ImageView) view.findViewById(R.id.phone);
            holder.text=(TextView) view.findViewById(R.id.text);

            view.setTag(holder);
            view.setLayoutParams(new GridView.LayoutParams(300, 300));
            view.setPadding(2, 2, 2, 2);
        } else {
            holder = (ViewHolder) view.getTag();

        }



        // Load image into GridView
        imageLoader.DisplayImage(imagearraylist.get(position).getImages(),
                holder.image);
        // Capture GridView item click
        view.setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View arg0) {



                // Send single item click data to SingleItemView Class
                Intent intent = new Intent(context, SingleItemView.class);
                // Pass all data phone
                intent.putExtra("ID", imagearraylist.get(position)
                        .getImages());
                context.startActivity(intent);
            }
        });

        view.setOnLongClickListener(new View.OnLongClickListener() {
            @Override
            public boolean onLongClick(View v) {

                new AlertDialog.Builder(context)
                        .setTitle("Are you sure?")
                        .setIcon(android.R.drawable.ic_dialog_alert)
                        .setPositiveButton("Restock", new DialogInterface.OnClickListener() {
                            @Override
                            public void onClick(DialogInterface dialog, int which) {


                               holder.text.setText("Restock");




                            }
                        })
                        .setNegativeButton("Sold Out", new DialogInterface.OnClickListener() {
                            @Override
                            public void onClick(DialogInterface dialog, int which) {


                                holder.text.setText("Sold Out");


                            }
                        })
                        .show();

                return true;
            }
        });


        return view;


    }

i am using Parse as my database, should i use Parse LocalDataStore? or SQlite? or sharedPreferences?

Aucun commentaire:

Enregistrer un commentaire