检查gridview的第一项是否完全显示

时间:2014-12-30 10:50:50

标签: java android gridview

我希望在显示网格视图的第一项时执行某些操作,目前我正在执行此操作。

if(((GridView)v).getFirstVisiblePosition() == 0)
{
    ...
    ...
}

但是当第一项略微可见时它会运行,但我想在它完全显示时运行它。是否有可能通过某种方式实现这一目标。此代码位于gridview的触摸事件内。

gridView.setOnTouchListener(new OnTouchListener() {

        private float mInitialY;
        @Override
        public boolean onTouch(View v, MotionEvent event) {
            // 
            int action = event.getAction();
            switch (action) {
            case MotionEvent.ACTION_DOWN:
                mInitialY = event.getY();
                break;

            case MotionEvent.ACTION_UP:


            case MotionEvent.ACTION_MOVE:
                final float y = event.getY();
                final float yDiff = y - mInitialY;
                if (yDiff > 0.0) {
                    //SCROLL DOWN
                    if(((GridView)v).getFirstVisiblePosition() == 0)
                    {

                    }
                    break;
                } else if (yDiff < 0.0) {
                        // SCROLL UP
                    break;

                }
                break;
            }

            // Handle ListView touch events.
            v.onTouchEvent(event);
            return true;
        }
    });

0 个答案:

没有答案