ios - Image overlaps previous view when tapping/swiping back -
i have uiscrollview
covers 1 of views entirely. have added background image same view scrolls @ different rate actual uiscrollview
. works absolutely fine unless use swipe gesture or tap 'back' button. happens image covers view 0.5 seconds before disappearing, , looks pretty bad.
this mean:
as can see, mid way through gesture, , rather being able see previous view, see part of image off left. doesn't happen on first page of uiscrollview
guess it's because image overlapping previous view.
here code:
override func viewdidload() { let pagesscrollviewsize = scrollview.frame.size scrollview.contentsize = cgsize(width: pagesscrollviewsize.width * cgfloat(images.count), height: pagesscrollviewsize.height) backgroundimageview.frame = cgrect(x: 0, y: 0, width: 2484, height: 736) backgroundimageview.image = uiimage(named: "sf.png") var visualeffectview = uivisualeffectview(effect: uiblureffect(style: .light)) uivisualeffectview visualeffectview.frame = backgroundimageview.bounds backgroundimageview.addsubview(visualeffectview) view.addsubview(backgroundimageview) view.sendsubviewtoback(backgroundimageview) scrollview.backgroundcolor = uicolor.clearcolor() } func scrollviewdidscroll(scrollview: uiscrollview) { loadvisiblepages() var factor = scrollview.contentoffset.x / (scrollview.contentsize.width - 414); if factor < 0 { factor = 0 } if factor > 1 { factor = 1 } var frame: cgrect = backgroundimageview.frame frame.origin.x = factor * (414 - backgroundimageview.frame.size.width) backgroundimageview.frame = frame }
anyone have suggestions?
you have add following in viewdidload
function:
self.view.clipstobounds = true
or scrollview.clipstobounds = true
if want clip subviews in uiscrollview
.
setting value true
causes subviews clipped bounds of receiver. if set false, subviews frames extend beyond visible bounds of receiver not clipped. default value false
.
from apple' doc : https://developer.apple.com/library/ios/documentation/uikit/reference/uiview_class/index.html#//apple_ref/occ/instp/uiview/clipstobounds
Comments
Post a Comment