カスタムビューのコントローラーでカスタムIBActionを作成する

オフセット

まず、コードを投稿することはできませんが、問題をできる限り説明するように努めます。

OK。カスタムSwiftビューファイルを作成し、view.xibそれview.swiftをロードしましたXibXIBは簡単ですlabel以上imageviewファイルIBOutletに自分を作成してview.swift、画像を切り替えたり、ラベルを変更したりできますview.swift単に拡張しUIViewます。

だから今、私はこのビューをStoryboardコントローラーを持っている私のに統合しました(それを呼びましょうotherVC.swift)。otherVC.swiftview.swift触れられている情報を取得したいと考えています設定してみましたIBActionが、設定するオプションがなく、オンだけIBOutletです。いくつかのグーグルの後、私はクラスUiControlがを設定するためのそれらのメカニズムを持っていることに気づきましIBAction

だから私view.swiftはもう拡張しませんがUIView、今はUIControlその後IBAction、タッチイベントでを作成できました(タッチダウンや内側のタッチなど)シミュレーターのビューでアプリを実行すると、ビューをクリックできますが、IBActionは呼び出されません。

したがって、私の質問はIBAction、他のVCで自分のビューにを設定する方法、またはIBActions特定のビューに独自のビューを作成する方法です。

再び..コードを投稿できません。実用的な例を含むスニペットまたはリンクを歓迎します

ありがとう!

アーサー・サハキアン

カスタムを作成するのは難しいと思いますがIBAction(不可能ではないにしても)、問題には委任、通知、クロージャなどの他の多くの解決策があります。私の意見では最も簡単な方法であるため、クロージャを使用することをお勧めします。

以下は、クロージャを使用してこれを実現する方法のサンプルコードです。

class View: UIView {

    var someButtonTapped: (UIButton) -> Void = { _ in }

    @IBAction private func someButtonTappedAction(_ sender: UIButton) {
        someButtonTapped(sender)
    }
}

次に、コントローラーに次を追加します。

objectOfYourCustomView.someButtonTapped = { (sender: UIButton) in
    // Handle action
}

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

カスタムコントロールをプログラムでAutoLayoutビューの中央に配置する

分類Dev

ビューコントローラの背景にカスタムカラーを設定する方法

分類Dev

AngularJS - ビューのカスタム コンバーターを作成する

分類Dev

Magentoのカスタムモジュールでカスタムコントローラーを呼び出す

分類Dev

XMLビューでカスタムコントロールを使用する

分類Dev

LaravelVoyagerでカスタムコントローラーを作成する方法

分類Dev

Android でカスタム リスト ビューを作成する

分類Dev

XAMLで別のカスタムコントロール基本クラスを使用して、WPFでビュー内のカスタムコントロールをインスタンス化するにはどうすればよいですか?

分類Dev

Laravelのコントローラーでカスタム関数へのルートを作成する

分類Dev

カスタム入力ビューコントローラー

分類Dev

プログラムでカスタムイベントログビューを作成します

分類Dev

カスタムビューでビットマップの影を作成する

分類Dev

Emberビュー用のカスタムコントローラーの取得

分類Dev

Swift:カスタムサブビューでカスタムUISliderを作成する

分類Dev

2タブビューコントローラでのカスタムタブバーの位置の変更

分類Dev

プログラムで制約のあるビューにカスタムボタンを追加する

分類Dev

iOS:ivarとしてのカスタムビューコントローラー

分類Dev

共有拡張機能のカスタムビューコントローラーを閉じる

分類Dev

フェニックスの複数のコントローラーでカスタムビューを使用する

分類Dev

コントロールのテキストフィールド、ボタンなどを使用して迅速にカスタムビューをプログラムで作成する方法

分類Dev

swift3のコレクションビューコントローラーでカスタムセルを使用する方法

分類Dev

Swift 4を使用してXcodeで複数のビューコントローラーを使用してカスタムモデルのインスタンスを作成するにはどうすればよいですか?

分類Dev

アラート ビューのように見えるカスタム ビューを作成する方法?

分類Dev

Generic.xmlで別のカスタムコントロールを使用しているカスタムコントロールを作成できますか?

分類Dev

すべてのビューコントロールにカスタムプロパティを追加する

分類Dev

プロットグラフでカスタムモードバーボタンアイコンを作成する

分類Dev

カスタムセル画像ビュー画像を新しいビューコントローラに渡す

分類Dev

カスタムビューコントローラの遷移xcode8

分類Dev

.net Core2.0でカスタムルーティングコントローラーを作成する方法

Related 関連記事

  1. 1

    カスタムコントロールをプログラムでAutoLayoutビューの中央に配置する

  2. 2

    ビューコントローラの背景にカスタムカラーを設定する方法

  3. 3

    AngularJS - ビューのカスタム コンバーターを作成する

  4. 4

    Magentoのカスタムモジュールでカスタムコントローラーを呼び出す

  5. 5

    XMLビューでカスタムコントロールを使用する

  6. 6

    LaravelVoyagerでカスタムコントローラーを作成する方法

  7. 7

    Android でカスタム リスト ビューを作成する

  8. 8

    XAMLで別のカスタムコントロール基本クラスを使用して、WPFでビュー内のカスタムコントロールをインスタンス化するにはどうすればよいですか?

  9. 9

    Laravelのコントローラーでカスタム関数へのルートを作成する

  10. 10

    カスタム入力ビューコントローラー

  11. 11

    プログラムでカスタムイベントログビューを作成します

  12. 12

    カスタムビューでビットマップの影を作成する

  13. 13

    Emberビュー用のカスタムコントローラーの取得

  14. 14

    Swift:カスタムサブビューでカスタムUISliderを作成する

  15. 15

    2タブビューコントローラでのカスタムタブバーの位置の変更

  16. 16

    プログラムで制約のあるビューにカスタムボタンを追加する

  17. 17

    iOS:ivarとしてのカスタムビューコントローラー

  18. 18

    共有拡張機能のカスタムビューコントローラーを閉じる

  19. 19

    フェニックスの複数のコントローラーでカスタムビューを使用する

  20. 20

    コントロールのテキストフィールド、ボタンなどを使用して迅速にカスタムビューをプログラムで作成する方法

  21. 21

    swift3のコレクションビューコントローラーでカスタムセルを使用する方法

  22. 22

    Swift 4を使用してXcodeで複数のビューコントローラーを使用してカスタムモデルのインスタンスを作成するにはどうすればよいですか?

  23. 23

    アラート ビューのように見えるカスタム ビューを作成する方法?

  24. 24

    Generic.xmlで別のカスタムコントロールを使用しているカスタムコントロールを作成できますか?

  25. 25

    すべてのビューコントロールにカスタムプロパティを追加する

  26. 26

    プロットグラフでカスタムモードバーボタンアイコンを作成する

  27. 27

    カスタムセル画像ビュー画像を新しいビューコントローラに渡す

  28. 28

    カスタムビューコントローラの遷移xcode8

  29. 29

    .net Core2.0でカスタムルーティングコントローラーを作成する方法

ホットタグ

アーカイブ