Я инициализируюсь два button
в StoreTabView.swift
:Bounds.size.width не реальная ширина
@IBDesignable class StoreTabView: UIView
store_button = UIButton.init(frame: CGRect.init(x: 0, y: 0, width: self.bounds.size.width/2.0, height: self.bounds.size.height))
user_button = UIButton.init(frame: CGRect.init(x: self.bounds.size.width/2.0, y: 0, width: self.bounds.size.width/2.0, height: self.bounds.size.height))
И в моей раскадровке я поставил класс в view
«с до StoreTabView
и установите constrains
:
И я нахожу self.bounds.size.width
не является реальной шириной, в моем simulator-5s
логическое разрешение должно быть 320
, а не 375
, но в Debug View Hierarchy
я нашел 375
.
И в консоли напечатать два button
показать деталь:
<UIButton: 0x7fd79be63620; frame = (187.5 0; 187.5 45); opaque = NO; layer = <CALayer: 0x60000023a9e0>>
Printing description of $7:
<UIButton: 0x7fd79be63360; frame = (0 0; 187.5 45); opaque = NO; layer = <CALayer: 0x60000023a8e0>>
Мы можем видеть width
является 187.5
, равна 375/2
, поэтому, self.bounds.size.width
почему не 320
? как сделать его 320
шириной? потому что ширина button
должна быть 160
, а не 187.5
.
Где вы проверяете self.bounds.size.width? Если вы проверяете класс контроллера вида, он должен быть self.view.bounds.size.width –
@Bhavuk Jain, я отредактировал мой вопрос, сделайте детальную информацию о проблеме, пожалуйста, проверьте. – aircraft
, чтобы вы могли видеть себя, печатать, ограничивать/кадр вместе, чтобы вы видели их разницу ... – Honey