常に5行のデータを表示する必要があるアプリに取り組んでいます。行のデータは、NSArray
文字列から取得されます。はNSArray
空にすることも、最大5つの要素を含めることもできます。UITableView
常に5行を表示するように強制したかったのです。試してみましたNSArray
が、要素が1つしかない場合、5行()を定義したため、iOSは例外をスローしますnumberOfRowsInSection
。UITableView
例外を発生させずに常に5行(グループ化、1行)を表示するようにするにはどうすればよいですか?また、セクションヘッダーを中央に配置するにはどうすればよいですか?titleForHeaderInSection
メソッドを使用しています。
質問する
169 次
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 に答える