Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/199.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 在GridView中用一个新图像替换Touch上的旧图像_Android_Gridview - Fatal编程技术网

Android 在GridView中用一个新图像替换Touch上的旧图像

Android 在GridView中用一个新图像替换Touch上的旧图像,android,gridview,Android,Gridview,我有一个自定义的gridview,其中有他们的图像。所以关于图像的触摸,我想用一个新的图像替换图像,这样用户就可以知道他触摸了哪些图像。 我得到了用户在int item_位置触摸的项目位置 我使用的代码 GridView gv1; CustomList adapter; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); gv1

我有一个自定义的gridview,其中有他们的图像。所以关于图像的触摸,我想用一个新的图像替换图像,这样用户就可以知道他触摸了哪些图像。 我得到了用户在int item_位置触摸的项目位置

我使用的代码

GridView gv1;
CustomList adapter;
@Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
gv1 = (GridView) findViewById(R.id.gridView1);
adapter = new CustomList(this, s, images);
            gv1.setAdapter(adapter);
            gv1.setOnTouchListener(this);
}

@Override
    public boolean onTouch(View v, MotionEvent event) {
        // TODO Auto-generated method stub

x = event.getX();
            y = event.getY();
            item_position = gv1.pointToPosition((int) x, (int) y);
View v1 = (View) gv1.getChildAt(item_position);
                Bitmap b = BitmapFactory.decodeResource(this.getResources(),
                        R.drawable.a1);
                v1.draw(new Canvas(b));

                adapter.notifyDataSetChanged();


}

id此代码行v1.drawnew Canvasb;工作是指绘制图像吗?不确定,因为它没有显示在gridview中,那么我怎么说@DhwanikGandhiTry adding view.invalidate;抽签后
public class CustomList extends ArrayAdapter<String>

{

    private final Activity context;
    private final String[] web;
    private final Integer[] imageId;

    public CustomList(Activity context, String[] web, Integer[] imageId) {
        super(context, R.layout.list_single, web);
        this.context = context;
        this.web = web;
        this.imageId = imageId;
    }

    @Override
    public View getView(int position, View view, ViewGroup parent) {
        LayoutInflater inflater = context.getLayoutInflater();
        View rowView = inflater.inflate(R.layout.list_single, null, true);
        // LinearLayout imageView = (LinearLayout)
        // rowView.findViewById(R.id.img);
        ImageView imageView = (ImageView) rowView.findViewById(R.id.img);
        // TextView txt = (TextView) rowView.findViewById(R.id.txt);
        // txt.setText(web[position]);
        imageView.setImageResource(imageId[position]);
        // imageView.setBackgroundResource(imageId[position]);
        return rowView;
    }
}