2016-06-20 5 views
0

Я создал пользовательский интерфейс, который имеет два контроллера детского вида, которые перемещаются в виде меню с каждой стороны экрана при нажатии кнопки (подумайте о меню гамбургера). У меня есть табличный вид на один и просмотр коллекции с другой. Также не будет прокручиваться для меня или принимать события касания. Код, указанный ниже, используется для добавления в родительский контейнер.Контроллеры детского просмотра не прокручиваются

sidePanel = sb.instantiateViewControllerWithIdentifier("sidePanel") 
    self.addChildViewController(sidePanel) 
    self.view.addSubview(sidePanel.view) 
    sidePanel.view.center.x += self.view.frame.size.width 
    sidePanel.view.frame.size.width = 250 
    sidePanel.view.updateConstraints() 
    sidePanel.view.layoutIfNeeded() 

Любые идеи, почему сенсор не работает? Я проверил все очевидные решения (userInteractionEnabled и т. Д.).

+0

'sidePanel.view.frame.size.width = 250' никогда не работает, покажите больше информации, ваш вопрос непонятен –

+0

@WilsonXJ Это единственный фрагмент кода. Остальное - в раскадровке. Это Container View, в который добавляются отдельные контроллеры sidePanel. Я удалил указанную вами линию с теми же результатами, чтобы вы были правы, и это не обязательно. –

+0

вы не можете изменить 'width' прямо на' UIView', вам нужно изменить фрейм как 'var rect = sidePanel.view.frame'' rect.size.width = 250'' sidePanel.view.frame = rect ' –

ответ

0

Проблема вызвана перемещением вида. SidePanel не содержится в представлении, поэтому он не получает события касания.