Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

'automaticallyAdjustsScrollViewInsets' was deprecated in iOS 11.0

I just started compiling up to iOS 11 and noticed that Apple now declared the property

var automaticallyAdjustsScrollViewInsets: Bool { get set }

as being deprecated:

https://developer.apple.com/documentation/uikit/uiviewcontroller/1621372-automaticallyadjustsscrollviewin

enter image description here

Is there another property to fix this warning in iOS 11?

Will the default value stay true or how will this be handled in future?

like image 736
Lepidopteron Avatar asked Jun 06 '17 13:06

Lepidopteron


3 Answers

This code may help:

if #available(iOS 11.0, *) {
    scrollView.contentInsetAdjustmentBehavior = .never
} else {
    automaticallyAdjustsScrollViewInsets = false
}
like image 106
tangkunyin Avatar answered Oct 23 '22 10:10

tangkunyin


The default for this property is now true. If you need to set this, you will need to set it in the scrollview that would host the viewController and set its property contentInsetAdjustmentBehavior. Below is an example:

scrollView.contentInsetAdjustmentBehavior = .automatic
like image 104
totiDev Avatar answered Oct 23 '22 12:10

totiDev


You can also set this in Interface Builder. Select your tableView or collectionView then select from the drop-down in the Size Inspector select .never for 'Content Insets Adjustment Behavior'

Size Inspector

like image 6
Richard Hope Avatar answered Oct 23 '22 11:10

Richard Hope