とある動画でライン風アプリを作成する勉強をしてるのですが
わからないところがあります。①の部分です。
ChatInputAccessaroyViewクラス型の変数chatInputAccesoryViewを宣言して
その中でlet view = ChatInputAccessaroyView() <-??
return view <-??
これらは一体何をやっているのでしょうか。
また、②に()がついてるのはどういう構文で調べたら出てきますか?
swift
1import UIKit 2 3class ChatRoomViewController: UIViewController{ 4 5 private let cellId = "cellId" 6 7 ① 8 private var chatInputAccesoryView: ChatInputAccessaroyView = { 9 let view = ChatInputAccessaroyView() 10 view.frame = .init(x: 0, y: 0, width: view.frame.width, height: 100) 11 return view 12 }() <-② 13 14 @IBOutlet weak var chatRoomTableView: UITableView! 15 override func viewDidLoad() { 16 super.viewDidLoad() 17 18 chatRoomTableView.delegate = self 19 chatRoomTableView.dataSource = self 20 //chatRoomTableView.register(UITableViewCell.self, forCellReuseIdentifier: cellId) 21 chatRoomTableView.register(UINib(nibName: "ChatRoomTableViewCell", bundle: nil), forCellReuseIdentifier: cellId) 22 23 chatRoomTableView.backgroundColor = .rgb(red: 110, green: 140, blue: 180) 24 25 } 26} 27 28extension ChatRoomViewController: UITableViewDelegate,UITableViewDataSource{ 29 30 func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat { 31 chatRoomTableView.estimatedRowHeight = 20 32 return UITableView.automaticDimension 33 34 } 35 36 func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int { 37 return 10 38 } 39 40 func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { 41 let cell = chatRoomTableView.dequeueReusableCell(withIdentifier: cellId, for:indexPath) 42 return cell 43 } 44 45 46} 47
swift
1import UIKit 2 3class ChatInputAccessaroyView: UIView{ 4 5 override init(frame: CGRect) { 6 super.init(frame: frame) 7 8 nibInit() 9 } 10 11 private func nibInit(){ 12 let nib = UINib(nibName: "ChatInputAccessoryView", bundle: nil) 13 guard let view = nib.instantiate(withOwner: self, options: nil).first as? UIView else {return} 14 15 16 view.frame = self.bounds 17 view.autoresizingMask = [.flexibleHeight, .flexibleWidth] 18 self.addSubview(view) 19 } 20 21 required init?(coder: NSCoder) { 22 fatalError("init(coder:) has not been implemented") 23 } 24}
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。