2016-05-07 6 views
0

静的なテーブルビューのピークとポップのサポートを実装しようとしています。私は実際に動作するようにピークとポップを得ることに成功しましたが、prepareForSegueはセルを覗くときに呼ばれていません。prepareForSegueがピック時に呼び出されない

// MasterPreviewing.swift 
import UIKit 

extension ThemesViewController: UIViewControllerPreviewingDelegate { 
func previewingContext(previewingContext: UIViewControllerPreviewing, viewControllerForLocation location: CGPoint) -> UIViewController? { 
    guard let viewController = self.storyboard?.instantiateViewControllerWithIdentifier("ThemesPreviewStoryboard") as? ThemePreviewViewController else { return nil } 

    viewController.preferredContentSize = CGSize(width: 376, height: 668) 

    return viewController 
    } 

func previewingContext(previewingContext: UIViewControllerPreviewing, commitViewController viewControllerToCommit: UIViewController) { 
    showViewController(viewControllerToCommit, sender: self) 
    } 
} 

-

// ThemesViewController.swift 
import UIKit 
override func viewDidLoad() { 
    super.viewDidLoad() 

    for cell in cells { 
     if traitCollection.forceTouchCapability == .Available { 
      self.registerForPreviewingWithDelegate(self, sourceView: cell) 
     } 
    } 

} 

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) { 

    print("prepareForSegue called") 

} 

任意の助けいただければ幸いです。

+1

segueを実行していないので、なぜ 'prepareForSegue' bが呼び出されますか? – Paulw11

+0

これをプログラム的にやり直す前に、私はPeekとPopをストーリーボードから直接有効にしていました。あなたがストーリーボードを通してPeekとPopを有効にするときだけprepareForSegueが呼び出されます。 @ Paulw11 –

+0

これは正しいのですが、それはあなたがピークセグエ – Paulw11

答えて

0

この記事では、ストーリーボードを使ってPeekとPopを設定するときにのみprepareForSegueが呼び出されます。私はMasterPreviewing.swiftに自分のコードを入れました。

関連する問題