Xcode 15 — проблема смещения экрана предварительного просмотра в UIKit
Я хочу отредактировать вид своего проекта с помощью предварительного просмотра, но у меня возникают проблемы со смещением экрана предварительного просмотра (при использовании дисплея iPhone 14 Pro). Я не могу правильно масштабировать, в результате чего на левом и верхнем краях появляются белые пробелы.
Вот мой класс просмотра. Спасибо всем за ответы.
import UIKit
import SnapKit
class MRPFavoritesBlankView : UIView {
lazy var labelFavorites : UILabel = {
let label = UILabel()
label.text = "Favorites "
label.font = UIFont.tommySoftBold(size: 30)
label.textColor = .white
label.textAlignment = .left
return label
}()
lazy var imageViewBlank : UIImageView = {
let imageView = UIImageView()
imageView.image = UIImage(named: "image_blank_view")
imageView.contentMode = .scaleAspectFit
return imageView
}()
lazy var labelNoFavorite : UILabel = {
let label = UILabel()
label.text = "You don't have any favorite songs"
label.font = UIFont.tommySoftThin(size: 18)
label.textColor = .white
return label
}()
lazy var buttonDiscover : UIButton = {
let button = UIButton()
button.setTitle("Let's discover", for: .normal)
button.titleLabel?.font = UIFont.tommySoftMedium(size: 18)
button.setBackgroundImage(UIImage(named: "button_lets_discover"), for: .normal)
button.setTitleColor(.black, for: .normal)
return button
}()
override init(frame: CGRect) {
super.init(frame: frame)
setUpView()
}
required init?(coder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
private func setUpView(){
addBackgroundImageView(to: self, imageName: "image_background")
addSubviews(labelFavorites,imageViewBlank,labelNoFavorite,buttonDiscover)
labelFavorites.snp.makeConstraints { make in
make.top.equalToSuperview().offset(30)
make.left.equalToSuperview().offset(20)
make.width.equalToSuperview()
make.height.equalTo(30)
}
imageViewBlank.backgroundColor = .red
imageViewBlank.snp.makeConstraints { make in
make.width.equalTo(350)
make.height.equalTo(350)
make.top.equalTo(labelFavorites.snp.bottom).offset(40)
}
labelNoFavorite.snp.makeConstraints { make in
make.top.equalTo(imageViewBlank.snp.bottom).offset(30)
make.left.equalToSuperview().offset(20)
make.width.equalToSuperview()
make.height.equalTo(30)
make.centerX.equalToSuperview()
}
buttonDiscover.snp.makeConstraints { make in
make.width.equalTo(0.8 * screenWidth)
make.height.equalTo(0.07 * screenHeight)
make.centerX.equalToSuperview()
make.top.equalTo(labelNoFavorite.snp.bottom).offset(15)
}
}
}
#Preview{
MRPFavoritesBlankView()
}
введите здесь описание изображения `import Foundation