我想在gridview中为选定项添加数字,是否可能?

时间:2015-07-07 01:09:26

标签: android eclipse gridview

这是我的代码是否可以为listview中的每个选定项添加一个数字?

    package org.cocos2dx.lib;

    import java.util.ArrayList;

    import android.content.Context;
    import android.view.LayoutInflater;

import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.TextView;

import com.nostra13.universalimageloader.core.ImageLoader;
import com.nostra13.universalimageloader.core.assist.SimpleImageLoadingListener;

public class GalleryAdapter extends BaseAdapter {

    private Context mContext;
    private LayoutInflater infalter;
    private ArrayList<CustomGallery> data = new ArrayList<CustomGallery>();
    private ArrayList<CustomGallery> isNumber = new ArrayList<CustomGallery>();
    ImageLoader imageLoader;
    //private String[] isNumber= new String[49];
    private int Counter=0;
    private boolean isActionMultiplePick;
    public GalleryAdapter(Context c, ImageLoader imageLoader) {
        infalter = (LayoutInflater) c
                .getSystemService(Context.LAYOUT_INFLATER_SERVICE);
        mContext = c;
        this.imageLoader = imageLoader;
        // clearCache();
    }

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

    @Override
    public CustomGallery getItem(int position) {
        return data.get(position);
    }

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

    public void setMultiplePick(boolean isMultiplePick) {
        this.isActionMultiplePick = isMultiplePick;
    }

    public void selectAll(boolean selection) {
        for (int i = 0; i < data.size(); i++) {
            data.get(i).isSeleted = selection;

        }
        notifyDataSetChanged();
    }

    public boolean isAllSelected() {
        boolean isAllSelected = true;

        for (int i = 0; i < data.size(); i++) {
            if (!data.get(i).isSeleted) {
                isAllSelected = false;
                break;
            }
        }

        return isAllSelected;
    }

    public boolean isAnySelected() {
        boolean isAnySelected = false;

        for (int i = 0; i < data.size(); i++) {
            if (data.get(i).isSeleted) {
                isAnySelected = true;
                break;
            }
        }

        return isAnySelected;
    }
    //praktisan ni mac
    public void isNumber(int[] x){
            if(isNumber.get(2).toString() == ""){

            }
    }
    public ArrayList<CustomGallery> getSelected() {
        ArrayList<CustomGallery> dataT = new ArrayList<CustomGallery>();
        for (int i = 0; i < data.size(); i++) {
            if (data.get(i).isSeleted) {
                dataT.add(data.get(i));
            }
        }
        //modify here
        return dataT;
    }

    public void addAll(ArrayList<CustomGallery> files) {

        try {
            this.data.clear();
            this.data.addAll(files);

        } catch (Exception e) {
            e.printStackTrace();
        }

        notifyDataSetChanged();
    }

    public boolean checkChecker(View v, int pos){
        if(data.get(pos).isSeleted){
            return true;
        }else{
            return false;
        }
    }
    public void isRefresh(int pos){

    }
    public void changeSelection(View v, int position) {


        if (data.get(position).isSeleted) {
            data.get(position).isSeleted = false;
            //check kung sino tinangal \ sort
        //  isNumber[Counter] = "";

我在这里尝试编码

//          int ct;
//          for(ct=0; ct==50;ct++){
//              if(isNumber.get(ct).isCount.equals(position+"")){
//                  isNumber.get(ct).isCount = "";
//                  break;
//              }
//          }
//          for(int ctr=ct; ctr<=50;ctr++){
//              isNumber.get(ct).isCount= isNumber.get(ct+1).isCount;
//          }
            Counter = Counter  - 1;
        } else {
            data.get(position).isSeleted = true;
//          isNumber.get(Counter).isCount = position + "";
            Counter = Counter  + 1;
        }

        //TextView X= (TextView) findViewById(R.id.txtCounter);
        ((ViewHolder) v.getTag()).imgQueueMultiSelected.setSelected(data.get(position).isSeleted);
        //((ViewHolder) v.getTag()).txtCounter.setSelected(isNumb.get(position).);
        ((ViewHolder) v.getTag()).txtCounter.setText(isNumber.get(1).toString());
        //((ViewHolder) v.getTag()).txtCounter.

    }

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

        final ViewHolder holder;

        if (convertView == null) {

            convertView = infalter.inflate(R.layout.gallery_item, null);
            holder = new ViewHolder();
            holder.imgQueue = (ImageView) convertView
                    .findViewById(R.id.imgQueue);
        holder.txtCounter = (TextView) convertView.findViewById(R.id.txtCounter);

            holder.imgQueueMultiSelected = (ImageView) convertView
                    .findViewById(R.id.imgQueueMultiSelected);

            if (isActionMultiplePick) {
                holder.imgQueueMultiSelected.setVisibility(View.VISIBLE);
            } else {
                holder.imgQueueMultiSelected.setVisibility(View.GONE);
            }

            convertView.setTag(holder);

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

        try {

            imageLoader.displayImage("file://" + data.get(position).sdcardPath,
                    holder.imgQueue, new SimpleImageLoadingListener() {
                        @Override
                        public void onLoadingStarted(String imageUri, View view) {
                            holder.imgQueue
                                    .setImageResource(R.drawable.no_media);
                            super.onLoadingStarted(imageUri, view);
                        }
                    });

            if (isActionMultiplePick) {

                holder.imgQueueMultiSelected
                        .setSelected(data.get(position).isSeleted);

            }

        } catch (Exception e) {
            e.printStackTrace();
        }

        return convertView;
    }

    public class ViewHolder {
        TextView txtCounter;
        ImageView imgQueue;
        ImageView imgQueueMultiSelected;
    }

    public void clearCache() {
        imageLoader.clearDiscCache();
        imageLoader.clearMemoryCache();
    }

    public void clear() {
        data.clear();
        notifyDataSetChanged();
    }
}

0 个答案:

没有答案