これは数時間前からこの問題の解決策を探していましたが、Interface BuilderでUITableViewCellを構築する方法を見つけることができません。アクションを親UINavigationControllerに渡してから、そのセルを使用して2つの独立したUITableViewのインスタンス間で情報を表示します。研究の数時間後、私のような私のファイルを構造化している:Interface Builderで作成されていないUIViewController内のUITableView内でUITableViewCell Nibを使用する
のUIViewControllerを、それがプロジェクト全体のための私の基本図です。スタック上にUserInfoControllerをプッシュするIBActionを含みます。
UI Builderで作成されたUITableViewCellには、新しいUIViewControllerを押す必要があるボタンが含まれており、スタックの上にUserInfoControllerを呼び出します。 File's Ownerは上記のUIViewControllerです。
上記のUIViewControllerで使用するUIViewは、Interface Builderで作成されました。このUIViewには、データのある最上位のUIViewセクションと、UITableViewCellを表示する最下位のUITableViewが含まれています。このUIViewに表示されているUITableViewCellのボタンを押すと、親UIViewController内のアクションがアクティブになるようにしたいと思います。
私はここで大きなものを見逃しているように感じます。私はまた、UITableViewCellを使用して最初のUIViewControllerのアクションを実行する必要があるUIViewとUITableViewを持つ別のUIViewControllerを最終的に作成したいと思います。しかし、私は私の意見の一つにもこれを働かせることができないので、私は上記の問題を解決するまで待つでしょう。
EDIT: 私の直感は、これがアウトレットの問題であると私に伝えています。現在、私のUIViewControllerは、UITableViewを含むUIViewのFile's Ownerとして機能しています。 UIViewには、UITableViewDelegateとUITableViewDataSourceのコードも含まれています。私のUITableViewCellを使用して関連情報を表示します。 UITableViewCellは独自のNibですが、File's OwnerもUIViewControllerです。しかし、UITableViewCellのボタンを押すと、そこにアウトレットがないのにUIViewにイベントが登録されます。私がUITableViewCellを独自のNibにしたい理由は、他のUIViewControllerビューを後で再利用したいからです。
私はUITableViewCellをうまく見ることができますが、正しく動作するようにはできません。 UITableViewCell内のボタンのアクションを、UITableViewデリゲートとDataSourceを含むファイルではなく、それを含むUIViewControllerにリンクするにはどうすればいいですか?
ホープこれは経験則としてもう少し明確:-D
あなたの質問が完全にはっきりしていません。カスタムセルを使用するためにUITableViewCellを取得することはできませんか?それとも、アクションは機能しませんか?または、アクションは機能しませんが、セルは更新されません。または、2つのインスタンスがある場合は動作しますが、動作しません。または、テーブルがカスタムセルを使用しないため、アクションが機能しないため、セルが更新されず、別のテーブルインスタンスを追加しても役立たない。一度に一つのことに取り組む。カスタムセルを稼働させると、ペン先からセルを使用するのは比較的簡単です。その後、アクションチェーンに取り組む。 – hooleyhoop
あなたの質問は何ですか?何を試しましたか?何がうまい?何がないのですか? –
さて、今、階層は次のようになります:UIViewController-> UIView-> UITableView-> UITableVIewCell。 UITableViewCellのファイル所有者をUIViewControllerにしましたが、カスタムセルのボタンを押すと、UIViewControllerではなく、アクションを実行するためにUIViewが呼び出されます。私がこれが起こっていると思う理由の1つは、プロパティのいずれかを編集するために、UITableCellViewのコンセントをUITableViewの親UIViewにリンクする必要があるためです。このコンセントを取り除き、代わりにUIViewControllerに配置すると、UIViewは私のUITableViewCellを見つけることができません –