私はiOSアプリケーション開発とobjective-cコーディングで初めてです。私はそれが可能かどうか分からない。まず、私が何をしたのかを説明してから、私が何をしたいのかを説明しましょう。私はあなたが直接それを見ることができるスクリーンショットを追加したか、最初に説明を読んでから、スクリーンショットを見てください。iosカスタムコントローラリダイレクトobj-cコードをカスタムビューに配置する方法
私はカスタムビューで添付されたカスタムxibを作成しました。 Menu.hと.cとして名前をつけました。
私はそこに4つのボタンを配置しています。それぞれのボタンには、カスタムビューのIBOutletも作成されています。実行時に作成されるようになりました。私は、「ユーザー定義の実行時属性」設定の下で、ストーリーボードのコントローラーのプロパティを設定する必要がありませんでした。私はawakeFromNib関数を使用してカスタムビューでその値を取得することができます。これで、これらのボタンのプロパティに簡単にアクセスして変更することができます。私もこのコードでこれらのボタンにアクションを加えることができます
[btnOutlet addTarget:self action:@selector(btnPressed:) forControlEvents:UIControlEventTouchUpInside];
そして、私は私の行動を得ています。
しかし、私は何をしようとしていることは、私は、カスタムビューでそれを置くしようとすると、それは今コントローラで正常に作動しているが、
NSString * storyboardName = @"Main";
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:storyboardName bundle: nil];
ViewController * vc = [storyboard instantiateViewControllerWithIdentifier:@"ViewController"];
[ViewController presentViewController:vc animated:YES completion:nil];
を次のようにコントローラのリダイレクトコードを使用することができることですそのボタンアクションには、私にエラーが表示されます "メニュー 'がセレクタを宣言したための目に見えるインターフェースがありません"。私は以下のスクリーンショットを追加しました。
no visible interface for 'Menu' declared the selector
私はこれを解決するために何ができるかを提案してください?それは私をナッツにしています。 :)
であなたのViewController
とセットアップを呼び出す 'presentViewController'が満たさhodは 'UIViewController'サブクラスに対してのみ宣言されています。あなたの 'Menu'クラスは' UIViewController'から継承していないようです – redent84
あなたのカスタムクラスのスーパークラスはどれですか? –
はい、あなたは正しいredent84です。 UIView Payal Maniyarです – tushersuvro