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:

enter image description here

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

Popular posts from this blog

asp.net mvc - SSO between MVCForum and Umbraco7 -

Python Tkinter keyboard using bind -

ubuntu - Selenium Node Not Connecting to Hub, Not Opening Port -