refactor the DYPhotoScrollView