Android编程实现GridView控件点击图片变暗效果的方法

本文实例讲述了Android编程实现GridView控件点击图片变暗效果的方法。分享给大家供大家参考,具体如下:

@Override

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

grid = (GridView) findViewById(R.id.grid);

grid.setAdapter(new GridAdapter());

grid.setOnItemClickListener(new OnItemClickListener() {

@Override

public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,

long arg3) {

Toast.makeText(MainActivity.this, "ddd", 1000).show();

}

});

}

class GridAdapter extends BaseAdapter {

@Override

public int getCount() {

return imgs.length;

}

@Override

public Object getItem(int arg0) {

return arg0;

}

@Override

public long getItemId(int arg0) {

return arg0;

}

@Override

public View getView(int arg0, View view, ViewGroup arg2) {

if (view == null) {

holder = new ViewHolder();

view = LayoutInflater.from(MainActivity.this).inflate(

R.layout.imgs, null);

holder.view = (ImageView) view.findViewById(R.id.gridimg);

view.setTag(holder);

} else {

holder = (ViewHolder) view.getTag();

}

holder.view.setImageResource(imgs[arg0]);

holder.view.setOnTouchListener(onTouchListener);

return view;

}

class ViewHolder {

ImageView view;

}

public OnTouchListener onTouchListener = new View.OnTouchListener() {

@Override

public boolean onTouch(View view, MotionEvent event) {

switch (event.getAction()) {

case MotionEvent.ACTION_UP:

changeLight((ImageView) view, 0);

// onclick

break;

case MotionEvent.ACTION_DOWN:

changeLight((ImageView) view, -80);

break;

case MotionEvent.ACTION_MOVE:

// changeLight(view, 0);

break;

case MotionEvent.ACTION_CANCEL:

changeLight((ImageView) view, 0);

break;

default:

break;

}

return true;

}

};

}

private void changeLight(ImageView imageview, int brightness) {

ColorMatrix matrix = new ColorMatrix();

matrix.set(new float[] { 1, 0, 0, 0, brightness, 0, 1, 0, 0,

brightness, 0, 0, 1, 0, brightness, 0, 0, 0, 1, 0 });

imageview.setColorFilter(new ColorMatrixColorFilter(matrix));

}

希望本文所述对大家Android程序设计有所帮助。

以上是 Android编程实现GridView控件点击图片变暗效果的方法 的全部内容, 来源链接: utcz.com/z/324835.html

回到顶部