Как центрировать логотип на SideMenu с помощью Xcode - PullRequest
0 голосов
/ 03 октября 2018

Я хочу центрировать логотип в SideMenu, и это код на данный момент:

  UIImageView *logo =[[UIImageView alloc] init];
    logo.image=[UIImage imageNamed:@"menulogo"];
    logo.contentMode = UIViewContentModeScaleToFill;
    logo.layer.cornerRadius = cornerRadius;
    logo.layer.masksToBounds = YES;
    logo.frame = container.bounds;
    [container addSubview:logo];
    [headerView addSubview:container];

Ответы [ 2 ]

0 голосов
/ 04 октября 2018

Создать расширение для UIView

extension UIView {  
func constraintToMidCenterXY(of view: UIView) {
    translatesAutoresizingMaskIntoConstraints = false

    NSLayoutConstraint.activate([centerXAnchor.constraint(equalTo: view.centerXAnchor),
                                 centerYAnchor.constraint(equalTo: view.centerYAnchor))
}

}

Тогда вы можете сделать что-то вроде этого

logo.constraintToMidCenterXY(of: container)

Также вы не должны устанавливать рамку логотипа на границы контейнера!это еще одна проблема

Выше можно использовать общий подход Autolayout.Вы также можете использовать UIStackView

0 голосов
/ 04 октября 2018

Хорошим решением является использование Auto Layout для центрирования logo на headerView.Он будет адаптироваться к любому размеру экрана iPhone.

...