1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980 |
- import UIKit
- protocol CreateGroupViewControllerDelegate: class {
- func didSelect(_ item: GroupItem)
- func navigateToCreateGroupConfirm()
- }
- final class CreateGroupViewController: AlertViewController {
-
- @IBOutlet weak var tableView: UITableView!
- @IBOutlet weak var contentView: UIView!
- @IBOutlet weak var contentHeightConstraint: NSLayoutConstraint!
-
- weak var delegate: CreateGroupViewControllerDelegate?
-
- override var style: AlertViewController.Style {
- return .actionSheet
- }
-
-
- override func viewDidLoad() {
- super.viewDidLoad()
- contentHeightConstraint.constant = 48 + 44 * CGFloat(RecentGroupInfo.share.count + 1)
- }
-
- @IBAction func cancel() {
- dismissController()
- }
-
- override func getContentView() -> UIView? {
- return contentView
- }
- }
- extension CreateGroupViewController: UITableViewDataSource, UITableViewDelegate {
- func numberOfSections(in tableView: UITableView) -> Int {
- return 1
- }
- func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
- return RecentGroupInfo.share.count + 1
- }
- func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
- dismissController()
- switch indexPath.row {
- case 0:
- self.delegate?.navigateToCreateGroupConfirm()
- default:
- self.delegate?.didSelect(RecentGroupInfo.share[indexPath.row - 1])
- }
- }
- func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
- switch indexPath.row {
- case 0:
- let cell = tableView.dequeueReusableCell(withIdentifier: "CreateCell", for: indexPath)
- return cell
- default:
- let cell = tableView.dequeueReusableCell(withIdentifier: "RecentCell", for: indexPath)
- return cell
- }
- }
- }
|