Skip to content

Commit

Permalink
feat: mainTableView의 Delegate 지정 (#8)
Browse files Browse the repository at this point in the history
테이블 뷰와 delegate 연결 커스텀 헤더 지정
  • Loading branch information
Settpark committed Apr 19, 2021
1 parent 1fd22f1 commit 3f4c79f
Show file tree
Hide file tree
Showing 4 changed files with 41 additions and 5 deletions.
12 changes: 8 additions & 4 deletions ios/sidedish/sidedish.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,10 @@
/* Begin PBXBuildFile section */
8214B70B262DE07A004467C2 /* MenuCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8214B70A262DE07A004467C2 /* MenuCell.swift */; };
8214B70E262DE253004467C2 /* MainTableViewDataSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8214B70D262DE253004467C2 /* MainTableViewDataSource.swift */; };
8214B711262DE4B4004467C2 /* MainTableViewDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8214B710262DE4B4004467C2 /* MainTableViewDelegate.swift */; };
82FDB9C7262DCFD8009E3EB7 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 82FDB9C6262DCFD8009E3EB7 /* AppDelegate.swift */; };
82FDB9C9262DCFD8009E3EB7 /* SceneDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 82FDB9C8262DCFD8009E3EB7 /* SceneDelegate.swift */; };
82FDB9CB262DCFD8009E3EB7 /* ViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 82FDB9CA262DCFD8009E3EB7 /* ViewController.swift */; };
82FDB9CB262DCFD8009E3EB7 /* MainViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 82FDB9CA262DCFD8009E3EB7 /* MainViewController.swift */; };
82FDB9CE262DCFD8009E3EB7 /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 82FDB9CC262DCFD8009E3EB7 /* Main.storyboard */; };
82FDB9D0262DCFD8009E3EB7 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 82FDB9CF262DCFD8009E3EB7 /* Assets.xcassets */; };
82FDB9D3262DCFD8009E3EB7 /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 82FDB9D1262DCFD8009E3EB7 /* LaunchScreen.storyboard */; };
Expand All @@ -20,10 +21,11 @@
/* Begin PBXFileReference section */
8214B70A262DE07A004467C2 /* MenuCell.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MenuCell.swift; sourceTree = "<group>"; };
8214B70D262DE253004467C2 /* MainTableViewDataSource.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MainTableViewDataSource.swift; sourceTree = "<group>"; };
8214B710262DE4B4004467C2 /* MainTableViewDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MainTableViewDelegate.swift; sourceTree = "<group>"; };
82FDB9C3262DCFD8009E3EB7 /* sidedish.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = sidedish.app; sourceTree = BUILT_PRODUCTS_DIR; };
82FDB9C6262DCFD8009E3EB7 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; };
82FDB9C8262DCFD8009E3EB7 /* SceneDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SceneDelegate.swift; sourceTree = "<group>"; };
82FDB9CA262DCFD8009E3EB7 /* ViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ViewController.swift; sourceTree = "<group>"; };
82FDB9CA262DCFD8009E3EB7 /* MainViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MainViewController.swift; sourceTree = "<group>"; };
82FDB9CD262DCFD8009E3EB7 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = "<group>"; };
82FDB9CF262DCFD8009E3EB7 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
82FDB9D2262DCFD8009E3EB7 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = "<group>"; };
Expand Down Expand Up @@ -62,8 +64,9 @@
children = (
82FDB9C6262DCFD8009E3EB7 /* AppDelegate.swift */,
82FDB9C8262DCFD8009E3EB7 /* SceneDelegate.swift */,
82FDB9CA262DCFD8009E3EB7 /* ViewController.swift */,
82FDB9CA262DCFD8009E3EB7 /* MainViewController.swift */,
8214B70D262DE253004467C2 /* MainTableViewDataSource.swift */,
8214B710262DE4B4004467C2 /* MainTableViewDelegate.swift */,
8214B70A262DE07A004467C2 /* MenuCell.swift */,
82FDB9CC262DCFD8009E3EB7 /* Main.storyboard */,
82FDB9CF262DCFD8009E3EB7 /* Assets.xcassets */,
Expand Down Expand Up @@ -143,11 +146,12 @@
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
82FDB9CB262DCFD8009E3EB7 /* ViewController.swift in Sources */,
82FDB9CB262DCFD8009E3EB7 /* MainViewController.swift in Sources */,
82FDB9C7262DCFD8009E3EB7 /* AppDelegate.swift in Sources */,
8214B70B262DE07A004467C2 /* MenuCell.swift in Sources */,
8214B70E262DE253004467C2 /* MainTableViewDataSource.swift in Sources */,
82FDB9C9262DCFD8009E3EB7 /* SceneDelegate.swift in Sources */,
8214B711262DE4B4004467C2 /* MainTableViewDelegate.swift in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
Expand Down
2 changes: 1 addition & 1 deletion ios/sidedish/sidedish/Base.lproj/Main.storyboard
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="17701" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="17701" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="a8t-K1-2rL">
<device id="retina6_1" orientation="portrait" appearance="light"/>
<dependencies>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="17703"/>
Expand Down
28 changes: 28 additions & 0 deletions ios/sidedish/sidedish/MainTableViewDelegate.swift
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
//
// MainTableViewDelegate.swift
// sidedish
//
// Created by 박정하 on 2021/04/19.
//

import UIKit

class MainTableViewDelegate : NSObject, UITableViewDelegate {

func tableView(_ tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? {
let headerView = UIView.init(frame: CGRect.init(x: 0, y: 0, width: tableView.frame.width, height: 32))

let label = UILabel() //나중에 별도의 유즈케이스를 처리할 프로토콜 필요할 거 같아요
label.frame = CGRect.init(x: 0, y: 0, width: headerView.frame.width, height: headerView.frame.height)
label.text = "모두가 좋아하는 든든한 메인요리"
label.font = .boldSystemFont(ofSize: 22)

headerView.addSubview(label)

return headerView
}

func tableView(_ tableView: UITableView, heightForHeaderInSection section: Int) -> CGFloat {
return 56 // headerView의 height(32) + figma에서 지정해 준 헤더와 셀 간의 간격!
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -11,20 +11,24 @@ class MainViewController: UIViewController {
@IBOutlet weak var menuTableView: UITableView!

private let tableViewDataSource : MainTableViewDataSource?
private let tableViewDelegate : MainTableViewDelegate?

override init(nibName nibNameOrNil: String?, bundle nibBundleOrNil: Bundle?) {
self.tableViewDataSource = nil
self.tableViewDelegate = nil
super.init(nibName: nil, bundle: nil)
}

required init?(coder: NSCoder) {
self.tableViewDataSource = MainTableViewDataSource()
self.tableViewDelegate = MainTableViewDelegate()
super.init(coder: coder)
}

override func loadView() {
super.loadView()
self.menuTableView.dataSource = tableViewDataSource
self.menuTableView.delegate = tableViewDelegate
}

override func viewDidLoad() {
Expand Down

0 comments on commit 3f4c79f

Please sign in to comment.