1

viewForHeaderInSectioniOS でテーブルを操作する場合、常に利用可能な方法があることは明らかであるため、これは奇妙な質問のように聞こえるかもしれません。

ただし、その関数を使用するには、そのテーブルのデータをリロードする必要があります。この場合、これは避けたいことです。

にボタンがありUITableViewSectionHeader、テーブルビュー データをリロードすることなく、アプリの特定の時点で無効にしたいと考えています。私はこのピースコードでそれをやろうとしました:

let currentTable = self.playerTables![i] as! UITableView
let header = currentTable.headerViewForSection(0)! as UITableViewHeaderFooterView!
let view = header.contentView as UIView
view.userInteractionEnabled = false

headercontentView のロード時に nilであるため、このコードを実行するとアプリがクラッシュします。コードを呼び出すと初期化されますcurrentTable.headerViewForSection(0)!が、次の行で再び nil になります。

参照しているセクションが正しいかどうかを確認し、Apple ドキュメントと google/so を確認しましたが、希望する方法でセクション ヘッダーにアクセスするための参照を見つけることができませんでした。方法はありますか?

4

1 に答える 1