microsoftarchive / android-sliding-layer-lib

Highly customizable SlidingLayer as you have seen in Wunderlist
http://wunderlist.com
Apache License 2.0
932 stars 277 forks source link

Action after touch SlidingLayer (MotionEvent) #110

Open ghost opened 6 years ago

ghost commented 6 years ago

Hello, I would like to call method after slide down 'SlidingLayer'. So I decided to detect Touch Event and after that call my method.

My Code: `SlidingLayer slidingLayer = findViewById(R.id.slidingLayer1); slidingLayer.setShadowDrawable(R.drawable.sidebar_shadow); slidingLayer.setShadowSizeRes(R.dimen.shadow_size); slidingLayer.setOffsetDistanceRes(R.dimen.offset_distance); slidingLayer.setPreviewOffsetDistanceRes(R.dimen.preview_offset_distance); slidingLayer.setStickTo(SlidingLayer.STICK_TO_TOP); slidingLayer.setChangeStateOnTap(false); slidingLayer.setOnTouchListener(new View.OnTouchListener() {

        @Override
        public boolean onTouch(final View v, final MotionEvent event) {
            if (event.getAction() == MotionEvent.ACTION_DOWN) {
                scanWifi();
            }
            return false;
        }
    });`

Detecting touch works well but SlidingLayer stop working. Do you know some other way to call method after Slide Down/Touch?

EDIT I found a solution, maybe someone else will use it too

` slidingLayer.setOnInteractListener(new SlidingLayer.OnInteractListener() { @Override public void onOpen() { setWifiList(); }

        @Override
        public void onShowPreview() {

        }

        @Override
        public void onClose() {

        }

        @Override
        public void onOpened() {

        }

        @Override
        public void onPreviewShowed() {

        }

        @Override
        public void onClosed() {

        }
    });`