常に5行のデータを表示する必要があるアプリに取り組んでいます。行のデータは、NSArray文字列から取得されます。はNSArray空にすることも、最大5つの要素を含めることもできます。UITableView常に5行を表示するように強制したかったのです。試してみましたNSArrayが、要素が1つしかない場合、5行()を定義したため、iOSは例外をスローしますnumberOfRowsInSection。UITableView例外を発生させずに常に5行(グループ化、1行)を表示するようにするにはどうすればよいですか?また、セクションヘッダーを中央に配置するにはどうすればよいですか?titleForHeaderInSectionメソッドを使用しています。
2 に答える
1
では、文字列cellForRowAtIndexPathのサイズに基づくロジックを実装する必要がありNSArrayます。
を使用して文字列の総数を検索し[NSArray count]ます。次に、indexPath.rowがより小さいかどうかを確認し、インデックスとして[NSArray count]使用indexPath.rowして配列から文字列を取得する標準の実装を使用します。indexPath.rowが、以上の場合は[NSArray count]、セルを空のままにしておくことができます(配列から何も取得しようとしないでください)。そうすれば、その例外は発生しません。
タイトルヘッダーの場合、これは機能しますか? https://discussions.apple.com/thread/2539133?start=0&tstart=0
に置き換えUITextAlignmentCenterますNSTextAlignmentCenter。
viewForHeaderInSection中央揃えを使用して返すことにより、問題を回避しますUILabel。
于 2013-01-21T21:51:07.890 に答える
0
- 5 行を表示するには、numberOfRowsInSection で定数 5 を返し、メソッドで
cellForRowAtIndexPath空のセルを生成する必要がありますif indexPath.row >= [array count]。 - ヘッダーを中央に表示するには
- (UIView*)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section
于 2013-01-21T21:54:19.127 に答える