2015-05-30 5 views
0

Можно установить ограничения программно и при использовании раскадровки? Я использую этот https://github.com/raphaelschaad/RSPlayPauseButton, а также для ограничений https://github.com/SnapKit/Masonry. Однако я не отображается правильно: BadGoodОграничения программно и с раскадровки

Изображение слева отображается неправильно, и оно не доступно для клика (это кнопка).

Соответствующий код:

- (void)viewDidLoad { 

    [super viewDidLoad]; 

    _playPauseButton = [[RSPlayPauseButton alloc] init]; 
    _playPauseButton.tintColor = [UIColor blackColor]; 
    [_playPauseButton addTarget:self action:@selector(playPauseButtonDidPress:) forControlEvents:UIControlEventTouchUpInside]; 
    [self.view addSubview:_playPauseButton]; 

} 

- (void)viewDidLayoutSubviews 
{ 

    [self.playPauseButton mas_makeConstraints:^(MASConstraintMaker *make) { 
       make.center.equalTo(self.view).with.offset(10); 
      }]; 

} 

ответ

1

Вам необходимо добавлять ограничения ширины/высоты для playPauseButton, попробуйте следующее:

- (void)viewDidLoad { 
    [super viewDidLoad]; 

    _playPauseButton = [[RSPlayPauseButton alloc] init]; 
    _playPauseButton.tintColor = [UIColor blackColor]; 
    [_playPauseButton addTarget:self action:@selector(playPauseButtonDidPress:) forControlEvents:UIControlEventTouchUpInside]; 
    [self.view addSubview:_playPauseButton]; 

    [playPauseButton mas_makeConstraints:^(MASConstraintMaker *make) { 
     make.center.equalTo(self.view).with.offset(10); 
     make.width.equalTo(@(50)); 
     make.height.equalTo(@(50)); 
    }]; 
} 
+0

Вы, вероятно, следует связать с библиотекой, которую вы используете для 'mas_makeConstraints' , –

+0

Ассистент также использует «Масонство». – Bannings

+0

Настройка ширины и высоты, похоже, сделала это, спасибо! – user2420837

Смежные вопросы