動的な登録フォーム構造を作成しようとしています。したがって、提供する xml またはデータに基づいて、動的フォームが生成されます。これが私のクラス階層のスクリーンショットです。
ここで、Form クラスは Base Class です。提供されたデータに応じて、作成する必要があるフォームのページ数が生成されます。各ページには 1 つのテーブルを含めることができますが、1 つまたは複数のグループ (実際にはセクション ビュー) を含めることができます。すべてのグループにはカスタム フィールドがあり、カスタム フィールドには特別な TextFeild または Dropdown フィールドまたは ImageField を含めることができます。
生成されたフォーム画面は次のとおりです。
私が今直面している問題は次のとおりです。私の Page.m クラスにはテーブル ビューのデリゲート メソッドが含まれており、CF_Fields クラスからイベントを発生させる必要があります。例: CFImageView には ImagePickerController Delegate メソッドが含まれています。画像がライブラリから選択されたら、テーブル ビューのセルの高さを拡張する必要があります。しかし、CFImageView クラスからのイベント アクセスはありません。
クラス階層は次のとおりです。 「フォーム」には「ページ」クラスが含まれます (テーブル ロジックはここにあります) 「ページ」には「グループ」クラスが含まれます 「グループ」には「CustomFeild」クラスが含まれます 「CustomFeild」には「FieldView」クラスが含まれます 「FieldView」には「CFTextField」が含まれますまたは「CFDropdown」または「CFImageView」クラス
Page クラスの下位クラスからイベントを発生させる必要があります。
すべてのクラスを継承する必要がありますか、それともデリゲートを使用する必要がありますか、それともカテゴリを維持する必要がありますか?