2016-06-20 2 views
0

ボタンを押したときに画面の両側からメニューとしてスライドする2つの子ビューコントローラーを持つUIを作成しました(ハンバーガーメニューと考える)。 1つはテーブルビュー、もう1つはコレクションビューです。どちらも私のためにスクロールしたり、タッチイベントを受け入れたりしません。以下のコードは、親コンテナに追加するために使用されます。スクロールしない子ビューコントローラー

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これは唯一のコードです。残りはストーリーボードに入っています。別の 'sidePanel'コントローラが追加されたコンテナビューです。あなたが同じ結果で言及した行を削除しましたので、必要ではありません。 –

+0

'width'を' UIView'に直接変更することはできませんので、 'var rect = sidePanel.view.frame'のようにフレームを変更する必要があります。' rect.size.width = 250' 'sidePanel.view.frame = rect ' –

答えて

0

この問題は、ビューを移動することによって発生します。 sidePanelはビュー内に含まれていないため、タッチイベントは受信されません。

関連する問題