Example #1
0
        public void Cleanup()
        {
            if (null == mImageView)
            {
                return;                 // cleanup already done
            }
            ImageView imageView = (ImageView)(((Reference)mImageView).Get());

            if (null != imageView)
            {
                // Remove this as a global layout listener
                ViewTreeObserver observer = imageView.ViewTreeObserver;
                if (null != observer && observer.IsAlive)
                {
                    observer.RemoveGlobalOnLayoutListener(this);
                }

                // Remove the ImageView's reference to this
                imageView.SetOnTouchListener(null);

                // make sure a pending fling runnable won't be run
                CancelFling();
            }
            if (null != mGestureDetector)
            {
                mGestureDetector.SetOnDoubleTapListener(null);
            }
            // Clear listeners too
            mMatrixChangeListener = null;
            mPhotoTapListener     = null;
            mViewTapListener      = null;

            // Finally, clear ImageView
            mImageView = null;
        }
Example #2
0
        public void Cleanup()
        {
            if (null != mImageView)
            {
                mImageView.TryGetTarget(out ImageView v);
                v.ViewTreeObserver.RemoveGlobalOnLayoutListener(this);
            }
            mViewTreeObserver = null;

            // Clear listeners too
            mMatrixChangeListener = null;
            mPhotoTapListener     = null;
            mViewTapListener      = null;

            // Finally, clear ImageView
            mImageView = null;
        }
Example #3
0
 public void SetOnPhotoTapListener(IOnPhotoTapListener listener)
 {
     mPhotoTapListener = listener;
 }
 public void SetOnPhotoTapListener(IOnPhotoTapListener listener)
 {
     mPhotoTapListener = listener;
 }
        public void Cleanup()
        {
            if (null == mImageView) {
                return; // cleanup already done
            }
            ImageView imageView = (ImageView)(((Reference)mImageView).Get());

            if (null != imageView) {
                // Remove this as a global layout listener
                ViewTreeObserver observer = imageView.ViewTreeObserver;
                if (null != observer && observer.IsAlive) {
                    observer.RemoveGlobalOnLayoutListener(this);
                }

                // Remove the ImageView's reference to this
                imageView.SetOnTouchListener(null);

                // make sure a pending fling runnable won't be run
                CancelFling();
            }
            if (null != mGestureDetector) {
                mGestureDetector.SetOnDoubleTapListener(null);
            }
            // Clear listeners too
            mMatrixChangeListener = null;
            mPhotoTapListener = null;
            mViewTapListener = null;

            // Finally, clear ImageView
            mImageView = null;
        }
 public void SetOnPhotoTapListener(IOnPhotoTapListener listener) => _photoTapListener = listener;