`
wangzhigang2
  • 浏览: 84974 次
  • 性别: Icon_minigender_1
  • 来自: 张家港
社区版块
存档分类
最新评论

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));

}

声明:eoe文章著作权属于作者,受法律保护,转载时请务必以超链接形式附带如下信息
原文作者: w13798976975
原文地址: http://my.eoe.cn/wgblwss/archive/15797.html
分享到:
评论

相关推荐

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

    总结一下,实现Android GridView控件点击图片变暗效果的方法主要包括以下几个步骤: 1. 创建一个自定义的适配器类,继承自BaseAdapter。 2. 在适配器的`getView`方法中,为每个ImageView设置OnTouchListener。 3. ...

    gridview图片点击变暗效果

    在这个场景下,"gridview图片点击变暗效果"是一个常见的交互设计,用于突出显示用户点击的图片,而不需要更换背景图片。这种效果可以提升用户体验,让用户明确感知到所选项目。 实现这个功能的关键在于为每个...

    android 通过GridView控件获取本地图片并动态显示 程序源码

    文章是参考博客http://blog.csdn.net/eastmount/article/details/41808179完成,主要讲述通过GridView控件点击加号图片动态添加本地相册图片,点击图片可以删除已添加图片。同时界面比较美观。 免费资源,希望对大家...

    android GridView控件学习

    在Android开发中,GridView是...综上所述,Android中的GridView控件是一个强大的布局工具,通过合理的适配器设计和优化,可以创建出丰富多样的界面效果。开发者可以根据实际需求灵活运用,实现各种功能丰富的网格布局。

    Gridview控件的使用详解

    GridView 控件的使用详解 GridView 控件是 ASP.NET web 应用程序中最常用的数据_grid 控件之一,它提供了强大的功能来显示和编辑数据 Gridview 控件的使用是非常广泛的,特别是在数据展示和编辑方面。 Gridview ...

    android gridview分页和滑动效果

    在Android开发中,GridView是一种非常常见的布局控件,它允许我们以网格的形式展示数据,通常用于创建类似相册、应用列表等场景。本教程将详细讲解如何实现GridView的分页和滑动效果。 首先,我们需要了解GridView...

    AndroidGridView点击每一个图片进入个人页面渐变特效.zip

    这个"AndroidGridView点击每一个图片进入个人页面渐变特效.zip"压缩包包含的资源可能是一个示例项目,展示了如何在GridView中实现点击图片后平滑过渡到个人详情页面的特效。以下是对这个主题的详细说明: 1. **...

    android Gridview分页实现

    在Android开发中,GridView是一种常用的布局控件,它允许我们以网格的形式展示数据。当我们处理大量数据时,分页加载可以提高应用性能,减少内存消耗,并提供更好的用户体验。本篇文章将详细讲解如何在Android中利用...

    Android GridView 图片缩放

    在"Android GridView 图片缩放"这个主题中,我们将深入探讨如何在GridView中实现图片点击后放大显示的功能,这在创建类似相册的应用或者需要用户查看详细图像的场景下非常实用。 首先,我们需要理解GridView的基本...

    精致的GridView控件源码

    GridView控件是Web开发中常用的一种布局组件,它允许数据以网格形式展示,通常用于显示数据库或其他数据源中的表格数据。这款精致的GridView控件源码提供了一种自定义和扩展的可能性,使得开发者可以根据自己的需求...

    android gridview 加载大量图片。无OOM

    在Android开发中,GridView是一种常见的布局控件,用于展示多行多列的列表,常用于图片、文件等的网格化展示。然而,当GridView需要加载大量图片时,如果不妥善处理,很容易导致内存溢出(Out-Of-Memory,简称OOM)...

    GridView控件的简单使用

    GridView控件是Windows Forms和ASP.NET Web开发中常用的一种数据展示工具,它的核心功能是将数据源中的数据以网格形式进行展示,便于用户查看、编辑和操作数据。在本篇文章中,我们将深入探讨GridView控件的基本用法...

    GridView控件的排序、分页、编辑功能实现实例

    GridView控件的排序、分页、编辑功能实现实例 GridView控件是 ASP.NET 中常用的数据GridView控件,它提供了丰富的功能来展示和操作数据。在本实例中,我们将展示如何实现GridView控件的排序、分页和编辑功能。 ...

    android GridView 添加图片

    在Android开发中,GridView是一种非常常见的布局控件,它允许我们以网格的形式展示数据,通常用于显示多张图片、图标或者其他元素。在这个场景下,"android GridView 添加图片"的主题涉及了如何在GridView中加载和...

    ASP的GridView控件类

    ASP的GridView控件类是ASP开发中的一个核心组件,它为网页展示数据提供了一种强大的方式。这个控件类似于ASP.NET中的GridView,允许开发者以表格形式动态地显示来自数据库或其他数据源的数据。在本文中,我们将深入...

Global site tag (gtag.js) - Google Analytics