[안드로이드] GridView Auto Scroll (SmoothScroll)


Android/안드로이드 프로그래밍 2013.03.27 13:40






ListView 는 SmoothScroll 이 적용이 잘 되는데, Grdiview는 동작하지 않는 경우가 많다. 같은 ViewGroup에 있는 메서드인데.. 아래코드와 같이 Adapter가 notifiDateSetChange된 이후 적용하면 정상적으로 AutoScroll이 된다. 


 Auto Scroll되는 Animation을 넣기 위해서는 아래에 smoothScrollToPosition보다 offset과 position, duration을 모두다 설정할 수 있는 smoothScrollToPositionFromTop을 사용한다. 


new Timer().schedule(new TimerTask()
            {
                @Override
                public void run() {         
                    nameHandler.sendEmptyMessage(0);
                }
            },500);
//// And in handler::

Handler nameHandler = new Handler()
    {
        public void handleMessage(Message msg)
        {
            super.handleMessage(msg);
            gridView.setSelection(selectorIndex);
                         // OR
            gridView.smoothScrollToPosition(selectorIndex);
            gridView.invalidate();
        }
    } ;

저작자 표시 비영리 변경 금지
신고

WRITTEN BY
ShakeJ

0 ,