2

私はアプリに取り組んでおり、この機能を実行する方法についていくつかの問題に直面しています。私は大まかなワイヤーフレームをつなぎ合わせました:

ワイヤーフレーム

基本的に、セクションにデータが存在しない場合、カスタムの「空のデータ」セル表示があります。デリゲート呼び出しで、numberOfRowsInSection配列カウントが 0 の場合に 1 を返す簡単なテストを行いました。ハッキーだと思いますので、より良いアプローチがあれば教えてください。

私の問題は、「空」セルを置き換えて、セクションにインラインで表示したいカスタム「入力」セルもあるということです。tableView insertRowsAtIndexPathsデータ配列に文字列を追加し、メソッドで非常にクレイジーな条件付きで を呼び出すことで、それをつなぎ合わせることができましたtableView cellForRowAtIndexPath:

私がうまくいかないのは、ユーザーが保存するのではなくキャンセルした場合、「入力」セルが消えて「空」セルが返されることです。データ配列からカスタム文字列を削除することはできません。これは、removeRowsAtIndexPaths を使用して 1 行を削除したため、データソース数が予期されていないというエラーが tableView によってスローされるためです。

ガイダンスをいただければ幸いです。

4

1 に答える 1

0

より良いアプローチは、テーブルビューを動的に非表示にしてプレースホルダービューを追加することです-私はそのためにテーブルビューを「誤用」しません

「入力ビュー」と「空のセル」はテーブルから独立しています

于 2012-12-16T17:05:45.820 に答える