前提・実現したいこと
Table Viewにヘッダーを追加し、ヘッダーの「タイトル」をクリックすることで行をタイトルの文字列でソートをしたいです。実現方法をご教授ください。
使っているツールのバージョンなど補足情報
xcode:Version 13.3.1 (13E500a)
storyboardを使用しています。
発生している問題・エラーメッセージ
「タイトル」をクリックしたらTbale Viewを一度、削除し、タイトルをソートしTbale Viewを再度、表示するという方法があると考えましたが、実装方法がわかりません。
また、属性インスペクターでHeaderやEnable sort等のチェックボックスをONにすることで実現できないか?と考えましたがそれらのチェックボックスが見つかりませんでした。
該当のソースコード
ヘッダーは下記のように実装しています。
func tableView(_ tableView: UITableView, viewForHeaderInSection section: Int) -> UIView?{ //ヘッダーにするビューを生成 let view = UIView() view.frame = CGRect(x: 0, y: 0, width: self.view.frame.size.width, height: 100) view.backgroundColor = UIColor.gray //ヘッダーに追加するラベルを生成 let headerLabel = UILabel() headerLabel.frame = CGRect(x: 20, y: 5, width: self.view.frame.size.width, height: 50) headerLabel.text = "タイトル" headerLabel.textColor = UIColor.white headerLabel.textAlignment = NSTextAlignment.left view.addSubview(headerLabel) //ヘッダーに追加するラベルを生成 let headerLabel2 = UILabel() headerLabel2.frame = CGRect(x: -120, y: 5, width: self.view.frame.size.width, height: 50) headerLabel2.text = "更新日時" headerLabel2.textColor = UIColor.white headerLabel2.textAlignment = NSTextAlignment.right view.addSubview(headerLabel2) return view }
自分で調べたことや試したこと
下記のページにやりたいことの実現方法が記載されているのですが、属性インスペクターのプロパティが私が使用しているXcodeにはないので参照し試すことができませんでした。
https://docs.microsoft.com/ja-jp/xamarin/mac/user-interface/table-view
0 コメント