[解決済み] iOSのUITableViewのセクションの展開と折りたたみ
2022-09-12 18:36:33
質問
だれか教えてください。
UITableView
で展開/折りたたみ可能なアニメーションを行う方法を教えてください。
sections
の
UITableView
を以下のように変更しますか?
または
どのように解決するのですか?
独自のヘッダー行を作成し、それを各セクションの最初の行として配置する必要があります。サブクラス化した
UITableView
や既にあるヘッダーをサブクラス化するのは面倒でしょう。今のやり方では、簡単にアクションを起こせるとは思えません。ヘッダーのように見えるセルを設定して
tableView:didSelectRowAtIndexPath
を設定して、手動でそのセクションを展開または折りたたむことができます。
私なら、各セクションの "expended" 値に対応するブーリアンの配列を保存します。そうすれば
tableView:didSelectRowAtIndexPath
でこの値をトグルして、特定のセクションをリロードします。
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
if (indexPath.row == 0) {
///it's the first row of any section so it would be your custom section header
///put in your code to toggle your boolean value here
mybooleans[indexPath.section] = !mybooleans[indexPath.section];
///reload this section
[self.tableView reloadSections:[NSIndexSet indexSetWithIndex:indexPath.section] withRowAnimation:UITableViewRowAnimationFade];
}
}
次に
numberOfRowsInSection
をチェックするために
mybooleans
の値をチェックし、セクションが展開されていない場合は1を、展開されている場合は1+セクション内のアイテム数を返します。
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
if (mybooleans[section]) {
///we want the number of people plus the header cell
return [self numberOfPeopleInGroup:section] + 1;
} else {
///we just want the header cell
return 1;
}
}
また
cellForRowAtIndexPath
を更新して、任意のセクションの最初の行のためのカスタムヘッダーセルを返すようにします。
関連
-
[解決済み] iOSまたはmacOSで、インターネット接続が有効かどうかを確認するにはどうすればよいですか?
-
[解決済み] Objective-Cで、ある文字列が他の文字列を含んでいるかどうかを調べるにはどうすればよいですか?
-
[解決済み] UITableViewの選択を無効にするにはどうすればよいですか?
-
[解決済み] 2つのJavaScriptオブジェクトの等質性を判断する方法は?
-
[解決済み] UITableViewの下にある余分なセパレータをなくす
-
[解決済み] iOS 8 UITableViewのセパレータインセット0が機能しない件
-
[解決済み] Unwind segueは何に使うのか、どう使うのか?
-
[解決済み] iOS Simulatorでネットワークを無効にすることは可能ですか?
-
[解決済み] UITableView - セクションヘッダーの色を変更する
-
[解決済み] UITableViewのセクション間のスペースを小さくする
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
クラッシュエラー libc++abi.dylib: NSException 型のキャッチできない例外で終了_allanGold のブログ - ProgrammerITS401
-
[解決済み] performSelectorのセレクタが不明なため、リークが発生する可能性があります。
-
[解決済み] 制約条件の変更をアニメーションで表現するには?
-
[解決済み] UITextViewのマージン/パディングをなくす方法
-
[解決済み] iOSシミュレータでスクリーンショットを撮る
-
[解決済み] テキストフィールドを移動する方法(次へボタン/完了ボタン)
-
[解決済み] 16進カラーバリューの使用方法
-
[解決済み] Swiftのプロトコルでオプションのメソッドを定義するには?
-
[解決済み] ファイルはユニバーサル(3スライス)ですが、iOSの静的ライブラリのための(n)ARMv7-sスライスエラーが含まれていない、どうにかして回避するには?
-
[解決済み] Cocoapods警告 - CocoaPodsがプロジェクトの基本構成を設定しなかった理由は、プロジェクトに既にカスタム構成が設定されているためです。