[OK]を、アイブ氏はここで、通常の方法を試してみましたが、これは比較的簡単な問題を見つけ出すことはできません -Swift:ストーリーボードビューコントローラーからコール関数を表示しましたか?
私は私がここに存在するビューコントローラがあります。
self.presentViewController((self.storyboard?.instantiateViewControllerWithIdentifier("createEvent"))!, animated: true, completion: nil)
をそして私は、関数内で呼び出す必要がありますこのcreateEvent VCからの私の元のメインVC。やって作成でその後
let create = self.storyboard?.instantiateViewControllerWithIdentifier("createEvent")
create.superv = self //error here
:
weak var superv: MainViewController!
を作成するイベントクラスで、このような何かをやって:私は入れて試してみました
superv.updateThings()
しかし、私はネクタイしようとしているエラーを取得します私のMainViewControllerに提示されたVC。私はここで間違って何をしていますか?
私はプロトコルの使用を見ましたが、私はそれを避けたいと思います。これを行う最も簡単な方法は何ですか?
これは私がやったことです:メインで :
var create = UIViewController()
create = (self.storyboard?.instantiateViewControllerWithIdentifier("createEvent"))!
create.delegate = self //error here
では、作成します。
weak var delegate: CreateEventDelegate!
protocol CreateEventDelegate: class {
func doSomeFunction()
}
し、エラーを私が呼び出す必要がメインでvalue of type uiviewcontroller has no member delegate
機能があるされています。
self.tableView.reloadData()
エラー:
doSomeFunction()がcreateによって呼び出されたときにエラー(私の質問で編集を見てください)と私のmainviewcontrollerを実行する必要がある場所を書いていますか? – skyguy
私は特定のオブジェクトとの取引を呼び出す必要があるメインの関数..この別のプロトコルで関数を定義すると、このオブジェクト(そのtableview)を参照する方法 – skyguy
エラーについて: 'create'は通常の' UIViewController 「委任」が何であるかは分かりません。あなたは 'CreateEventViewController'(それがクラスの名前であると仮定して)としてキャストする必要があります。その場合、 'create =(self.storyboard?.instantiateViewControllerWithIdentifier(" createEvent "))を実行します。として!CreateEventViewController' –