0

さまざまなデータをロードできる UITableView クラスが 1 つあります。ロードされたデータに対するすべてのアクションは、データが何であるかに関係なく同じになるため、すべてを同じクラスに保持するのが最善であると考えました。私が直面している問題は、1 セットのデータについては、スタイル UITableViewStyleGrouped を使用するために UITableView が必要であり、残りは UITableViewStylePlain を使用する必要があることです。

次の if ステートメントを使用して、これを prepareForSegue で機能させることができました。

if([whatToLoad isEqualToString:@"Sets"]){
            [[segue destinationViewController] initWithStyle:UITableViewStyleGrouped];
        }
        else
            [[segue destinationViewController] initWithStyle:UITableViewStylePlain];

しかし、Xcode は、「式の結果は使用されていません」という両方の警告を表示します。警告なしで同じ結果を得るために他にできることはありますか? または、グループ化されたテーブルを必要とする 1 つのデータ セットに対して別のクラスを作成する必要がありますか?

4

1 に答える 1

0

ストーリーボード ファイルに複数のテーブル ビュー コントローラーを含めることができ、「クラス」をUITableViewControllerそれぞれの同じサブクラスに設定できます。したがって、それらのそれぞれに同じコントローラー コードを使用できますが、1 つには "グループ化された" テーブル ビューがあり、他には "プレーンな" テーブル ビューがあります。

通話中

[[segue destinationViewController] initWithStyle:...]

目的のView Controllerはすでに割り当てられ初期化されたインスタンスであり、関数は通常、別のinitXXXインスタンスを返すことが許可されているため、私には危険に思えます。

于 2012-12-28T16:47:53.287 に答える