私はコードを投稿できませんが、可能な限り私の問題を記述しようとします。私のカスタムビューのコントローラにカスタムIBActionを作成
カスタムスウィフトビューファイルをview.xib
として作成し、view.swift
にロードしました。そのファイルはXib
です。 Xibはimageview
の上の単純なlabel
です。 view.swift
ファイルにIBOutlet
を作成できます。画像を切り替えるか、ラベルを変更してください。 view.swift
は単にUIView
に拡張されます。
これで、コントローラがあるStoryboard
にこのビューを統合しました(otherVC.swift
と呼ぶことができます)。今すぐotherVC.swift
は、view.swift
がタッチされたという情報を得たいと思っています。 IBAction
を設定しようとしましたが、設定するオプションはありません。ちょうどIBOutlet
です。いくつかのGoogeの後で、クラスUiControl
にIBAction
を設定するそれらの機構があることが分かりました。
だから、view.swift
は、もはやUIView
を延長しなくても、UIControl
になります。その後、タッチイベントでIBAction
を作成できました。 (タッチダウンやタッチのような)シミュレータのビューでアプリケーションを実行すると、ビューをクリックできますが、IBActionは呼び出されません。
私の質問は、他のVCで自分のビューにIBAction
を設定する方法、または特定のビューに対して自分自身のIBActions
を作成する方法です。
..コードをポストすることはできません。スニペットやリンクを歓迎します。
ありがとう!
カスタムビューに 'UITapGestureRecognizer'を追加しようとしましたか? – byJeevan
はい、私のビューが他のVCにタップされているコールを送信したいと思います。 – Offset
その場合、 'Delegates'や' NSNotificationCenter'のようなオブザーバを使うことができます。 – byJeevan