Table ja - Tai-Kimura/SwiftJsonUI GitHub Wiki

🇺🇸 English | 🇯🇵 日本語

Table

class: SJUITableView inherits: UITableView

Tableの属性

属性名 UIKit SwiftUI Compose XML jsonでの型 詳細 備考
background - string|JSON テーブルビューの背景色。柔軟な色指定のためにUIColor.findColorByJSONで処理されます。

Tableのプロパティ

静的プロパティ

open class var viewClass: SJUITableView.Type

このプロパティは、createFromJSONメソッドでどのクラスを生成するかを決定するために使用されます。 SJUITableViewを継承したクラスを作成する際は、このプロパティでビューのクラスを定義してください。

デフォルト設定

SJUITableViewは、以下のデフォルト設定を適用します:

  • separatorStyle = .none - デフォルトのセル区切り線を削除
  • showsVerticalScrollIndicator = false - 垂直スクロールインジケーターを非表示
  • showsHorizontalScrollIndicator = false - 水平スクロールインジケーターを非表示

継承されたプロパティ

SJUITableViewは、UITableViewとSJUIViewからすべてのプロパティを継承しています:

  • データソースとデリゲートの管理
  • セルの登録と再利用機能
  • セクション管理(ヘッダー、フッター)
  • 編集と選択機能
  • スクロール位置とコンテンツ管理
  • SJUIViewからのタッチとジェスチャー処理
  • レイアウト制約の管理

Tableの関数

静的メソッド

public class func createFromJSON(attr: JSON, target: Any, views: inout [String: UIView]) -> SJUITableView

このメソッドは、JSONファイルからテーブルビューが作成される際に呼び出されるファクトリメソッドです。 SJUITableViewクラスを継承したクラスを作成する際は、このメソッドをオーバーライドしてください。

データソースとデリゲートの統合

SJUITableViewは、UITableViewのデータソースとデリゲートパターンとシームレスに統合されます:

  • ターゲットがUITableViewDelegateに準拠している場合の自動デリゲート割り当て
  • ターゲットがUITableViewDataSourceに準拠している場合の自動データソース割り当て
  • すべての標準テーブルビューコールバックとメソッドのサポート

継承されたメソッド

SJUITableViewは、UITableViewとSJUIViewからすべてのメソッドを継承しています:

  • セル管理(dequeueReusableCellcellForRowなど)
  • セクション管理(numberOfSectionsInTableViewなど)
  • 編集機能(setEditingdeleteRowsinsertRowsなど)
  • 選択処理(selectRowdeselectRowなど)
  • スクロール管理(scrollToRowsetContentOffsetなど)
  • SJUIViewからのタッチとジェスチャー処理
  • レイアウト制約の管理

使用上の注意

  • カスタムテーブルビューセルとデータソースとの統合用に設計
  • 区切り線とスクロールインジケーターが無効化されたクリーンな外観を提供
  • すべての標準UITableView機能とカスタマイズをサポート
  • SwiftJsonUIのレイアウトとスタイリングシステムと統合