fixes for iOS 8: use layout constraints instead of modifying frame