I don't know, is it a bug, or some new mega-features:)
If you call addMotionEffect in init or other method before your view really appeared at the screen - it doesn't work. But if you do it when your view is at the screen - its OK!!!
Here's my working solution:
override func didMoveToWindow() {
super.didMoveToWindow()
guard window != nil else {
pictureView.removeMotionEffect(pictureParralaxEffect)
return
}
pictureView.addMotionEffect(pictureParralaxEffect)
}
(Sorry for my awful English))))