Вот мое оригинальное сообщение о том, как заставить scrollView работать в первую очередь: ScrollView in NIB File Swift. Моя новая проблема заключается в том, что когда внешний, длинный вид, который я помещаю в scrollview, загружается на любое устройство ios меньше, чем iPhone 6+, оно не соответствует ширине. Я попытался изменить ширину представления в viewDidLoad, но он говорит: «Невозможно назначить результат этого выражения».Как изменить ширину рамки представления в файле NIB при просмотре загрузок в соответствии с шириной экрана
GitHub Ссылка: https://github.com/frodgers1207/Testing-ScrollViews
class ScrollViewVC: UIViewController {
@IBOutlet weak var mainScrollView: UIScrollView!
@IBOutlet var contentView: UIView!
@IBOutlet weak var contentViewTitle: UILabel!
@IBOutlet weak var contentViewPrice: UILabel!
@IBOutlet weak var contentViewImageContainer: UIScrollView!
@IBOutlet var imageContainer: UIView!
@IBOutlet weak var imageOne: UIImageView!
@IBOutlet weak var imageTwo: UIImageView!
@IBOutlet weak var imageThree: UIImageView!
override init(nibName nibNameOrNil: String?, bundle nibBundleOrNil: NSBundle?) {
super.init(nibName: nibNameOrNil, bundle: nibBundleOrNil)
//set the tab bar item's title
}
convenience init() {
self.init(nibName: "ScrollViewVC", bundle: nil)
}
required init(coder aDecoder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
override func viewDidLoad() {
super.viewDidLoad()
contentView.frame.width = UIScreen.mainScreen().bounds.width //Error Here: "Cannot assign to the result of this expression"
self.mainScrollView.contentSize.height = self.contentView.frame.height
self.mainScrollView.contentSize.width = UIScreen.mainScreen().bounds.width
self.mainScrollView.addSubview(contentView)
self.contentViewImageContainer.addSubview(self.imageContainer)
self.contentViewImageContainer.contentSize = self.imageContainer.frame.size
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
}
Edit: Нужно ли создавать пользовательские UIView с инициализации кадра? Позволит ли я изменить размер моей UIView во время выполнения в зависимости от устройства?
Это, как выглядит файл СИБ. Каждый снимок экрана представляет собой представление верхнего уровня, и я добавляю их друг в друга, когда представление загружается, чтобы лучше понять, чего я пытаюсь выполнить.
ли это ошибка компиляции времени? – MendyK
Да, это ошибка времени компиляции. – Frodgers