Skip to content

Commit bbb4974

Browse files
committed
[#198] 레이아웃 임시 수정코드 반영
1 parent 56f95e3 commit bbb4974

File tree

7 files changed

+118
-41
lines changed

7 files changed

+118
-41
lines changed

EATSSU/App/Sources/Presentation/Review/MainReviewView/Component/ReviewListTableViewCell.swift

+4-24
Original file line numberDiff line numberDiff line change
@@ -55,10 +55,10 @@ final class ReviewListTableViewCell: BaseTableViewCell {
5555

5656
private var sideButton: BaseButton = {
5757
let button = BaseButton()
58-
// button.setImage(EATSSUDesignAsset.Images.icInfo.image, for: .normal)
5958
button.setTitleColor(EATSSUDesignAsset.Color.GrayScale.gray400.color, for: .normal)
6059
button.titleLabel?.font = .caption2
6160
button.setTitle("신고", for: .normal)
61+
// button.setImage(EATSSUDesignAsset.Images.icInfo.image, for: .normal)
6262
button.configuration?.contentInsets = .init(top: 0, leading: 0, bottom: 0, trailing: 15)
6363
return button
6464
}()
@@ -120,7 +120,6 @@ final class ReviewListTableViewCell: BaseTableViewCell {
120120
lazy var topStackView: UIStackView = {
121121
let stackView = UIStackView(arrangedSubviews: [profileStackView, dateReportStackView])
122122
stackView.axis = .horizontal
123-
// stackView.spacing = 8.adjusted
124123
stackView.alignment = .fill
125124
stackView.distribution = .fill
126125
stackView.backgroundColor = .yellow
@@ -141,7 +140,8 @@ final class ReviewListTableViewCell: BaseTableViewCell {
141140
private lazy var menuChipCollectionView: UICollectionView = {
142141
let layout = UICollectionViewFlowLayout()
143142
layout.scrollDirection = .horizontal
144-
layout.minimumLineSpacing = 50
143+
// MARK: - TODO
144+
layout.minimumLineSpacing = 4
145145
// layout.minimumInteritemSpacing = 60
146146
let cv = UICollectionView(frame: .zero, collectionViewLayout: layout)
147147
cv.dataSource = self
@@ -168,8 +168,7 @@ final class ReviewListTableViewCell: BaseTableViewCell {
168168

169169
private let dividerView: UIView = {
170170
let view = UIView()
171-
// view.backgroundColor = EATSSUDesignAsset.Color.GrayScale.gray200.color
172-
view.backgroundColor = .red
171+
view.backgroundColor = EATSSUDesignAsset.Color.GrayScale.gray200.color
173172
return view
174173
}()
175174

@@ -187,48 +186,29 @@ final class ReviewListTableViewCell: BaseTableViewCell {
187186
}
188187

189188
override func setLayout() {
190-
// profileStackView.snp.makeConstraints { make in
191-
// make.top.equalToSuperview().offset(5)
192-
// make.leading.equalToSuperview().offset(16)
193-
// make.height.equalTo(30)
194-
// }
195-
//
196-
// dateReportStackView.snp.makeConstraints { make in
197-
// make.top.equalTo(profileStackView)
198-
// make.trailing.equalToSuperview().inset(16)
199-
// }
200189
cellStackView.snp.makeConstraints { make in
201190
make.edges.equalToSuperview()
202191
}
203-
204192
menuChipCollectionView.snp.makeConstraints { make in
205-
// make.top.equalTo(dateReportStackView.snp.bottom).offset(8)
206193
make.horizontalEdges.equalToSuperview()
207194
make.height.equalTo(22)
208195
}
209-
210196
contentStackView.snp.makeConstraints { make in
211-
// make.top.equalTo(menuChipCollectionView.snp.bottom)
212197
make.horizontalEdges.equalToSuperview()
213198
}
214-
215199
foodImageView.snp.makeConstraints { make in
216200
make.height.width.equalTo(358)
217201
}
218-
219202
sideButton.snp.makeConstraints { make in
220203
make.height.equalTo(12.adjusted)
221204
}
222-
223205
reactionView.snp.makeConstraints { make in
224206
make.horizontalEdges.equalToSuperview()
225207
make.height.equalTo(20)
226208
}
227-
228209
dividerView.snp.makeConstraints { make in
229210
make.height.equalTo(1)
230211
}
231-
232212
}
233213

234214
override func prepareForReuse() {

EATSSU/App/Sources/Presentation/Review/MainReviewView/Component/ReviewSummaryView.swift

+16-4
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ final class ReviewSummaryView: BaseUIView {
5252
label.text = "총 리뷰 수"
5353
label.font = .caption2
5454
label.backgroundColor = .red
55-
label.setContentHuggingPriority(.defaultHigh, for: .horizontal)
55+
// label.setContentHuggingPriority(.defaultHigh, for: .horizontal)
5656
return label
5757
}()
5858

@@ -131,8 +131,20 @@ final class ReviewSummaryView: BaseUIView {
131131
make.horizontalEdges.equalToSuperview().inset(20.adjusted)
132132
make.bottom.equalToSuperview()
133133
}
134-
starSummaryView.snp.makeConstraints { make in
135-
make.top.equalToSuperview().offset(20.adjusted)
136-
}
134+
// starSummaryView.snp.makeConstraints { make in
135+
// make.height.equalToSuperview().dividedBy(2.3)
136+
// }
137+
// reviewDistributionStackView.snp.makeConstraints { make in
138+
// make.verticalEdges.equalToSuperview()
139+
// }
140+
// totalReviewStackView.snp.makeConstraints { make in
141+
// make.top.horizontalEdges.equalToSuperview()
142+
// make.height.equalTo(18)
143+
// }
144+
// yAxisStackView.snp.makeConstraints { make in
145+
// make.top.equalTo(totalReviewStackView.snp.bottom)
146+
// make.height.equalTo(90)
147+
// make.bottom.horizontalEdges.equalToSuperview()
148+
// }
137149
}
138150
}

EATSSU/App/Sources/Presentation/Review/MainReviewView/Component/StarSummaryView.swift

+1
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ final class StarSummaryView: BaseUIView {
1717
private let starImageView: UIImageView = {
1818
let imageView = UIImageView()
1919
imageView.image = EATSSUDesignAsset.Images.icStarYellow.image
20+
imageView.contentMode = .scaleAspectFit
2021
return imageView
2122
}()
2223

EATSSU/App/Sources/Presentation/Review/MainReviewView/MainReviewView.swift

+26-11
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,17 @@ final class MainReviewView: BaseUIView {
1818

1919
// MARK: - UI Components
2020

21-
private let scrollView = UIScrollView()
22-
private let contentView = UIView()
21+
// private let scrollView = UIScrollView()
22+
private let scrollView: UIScrollView = {
23+
let sv = UIScrollView()
24+
sv.backgroundColor = .green
25+
return sv
26+
}()
27+
private let contentView: UIView = {
28+
let cv = UIView()
29+
cv.backgroundColor = .gray
30+
return cv
31+
}()
2332

2433
/// 리뷰 상단 summary
2534
let summaryView = ReviewSummaryView()
@@ -30,6 +39,7 @@ final class MainReviewView: BaseUIView {
3039
tableView.separatorStyle = .none
3140
tableView.backgroundColor = .yellow
3241
tableView.rowHeight = UITableView.automaticDimension
42+
tableView.estimatedRowHeight = 100
3343
tableView.isScrollEnabled = false
3444
return tableView
3545
}()
@@ -38,6 +48,12 @@ final class MainReviewView: BaseUIView {
3848
public let writingReviewButton = ESButton(size: .big, title: "리뷰 작성하기")
3949

4050
// MARK: - Functions
51+
var reviewSummaryHeightConstraint: Constraint?
52+
var tableViewHeightConstraint: Constraint?
53+
var a: CGFloat = 1
54+
55+
56+
4157

4258
override func configureUI() {
4359
addSubviews(
@@ -54,29 +70,28 @@ final class MainReviewView: BaseUIView {
5470
override func setLayout() {
5571
writingReviewButton.snp.makeConstraints { make in
5672
make.horizontalEdges.equalTo(safeAreaLayoutGuide).inset(16)
57-
make.bottom.equalTo(safeAreaLayoutGuide)
73+
make.bottom.equalTo(safeAreaLayoutGuide).inset(5)
5874
}
5975
scrollView.snp.makeConstraints { make in
60-
make.top.leading.trailing.equalTo(safeAreaLayoutGuide)
76+
make.top.horizontalEdges.equalTo(safeAreaLayoutGuide)
6177
make.bottom.equalTo(writingReviewButton.snp.top).offset(-10)
6278
}
6379
contentView.snp.makeConstraints { make in
64-
make.edges.equalTo(scrollView.contentLayoutGuide)
65-
make.width.equalTo(scrollView.frameLayoutGuide)
66-
// TODO: 수정 필요
67-
make.height.equalTo(2000)
80+
make.edges.equalToSuperview()
81+
make.width.equalToSuperview()
82+
make.height.equalToSuperview()
83+
// make.bottom.equalTo(tableView.snp.bottom).priority(.low)
84+
// make.height.greaterThanOrEqualTo(scrollView.snp.height)
6885
}
6986
summaryView.snp.makeConstraints { make in
70-
make.top.equalToSuperview()
71-
make.horizontalEdges.equalToSuperview()
87+
make.top.horizontalEdges.equalToSuperview()
7288
}
7389
tableView.snp.makeConstraints { make in
7490
make.top.equalTo(summaryView.snp.bottom)
7591
make.horizontalEdges.equalToSuperview()
7692
make.bottom.equalToSuperview()
7793
}
7894
}
79-
8095
}
8196

8297
#if DEBUG

EATSSU/App/Sources/Presentation/Review/MainReviewView/WritingReview/WritingReviewModalView.swift

+1
Original file line numberDiff line numberDiff line change
@@ -13,3 +13,4 @@ final class WritingReviewModalView: BaseUIView {
1313

1414

1515
}
16+

EATSSU/App/Sources/Presentation/Review/MainReviewViewController.swift

+34
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,40 @@ final class MainReviewViewController: BaseViewController {
2424
setTableView()
2525
self.dataSource = ["고구마치즈돈까스", "막국수", "요구르트","김치","수육+겉절이김치참치", "온두부", "","짜파게티"]
2626
mainReviewView.tableView.reloadData()
27+
// mainReviewView.updateReviewSummaryHeight()
28+
// mainReviewView.updateTableViewHeight()
29+
updateReviewSummaryHeight()
30+
updateTableViewHeight()
31+
32+
}
33+
34+
var a: CGFloat = 1
35+
36+
func updateReviewSummaryHeight() {
37+
mainReviewView.summaryView.layoutIfNeeded()
38+
let height = mainReviewView.summaryView.systemLayoutSizeFitting(UIView.layoutFittingCompressedSize).height
39+
a = height
40+
mainReviewView.reviewSummaryHeightConstraint?.update(offset: height) // 높이 업데이트
41+
view.layoutIfNeeded()
42+
}
43+
44+
// MARK: - 테이블뷰 높이 업데이트
45+
// func updateTableViewHeight() {
46+
// mainReviewView.tableView.layoutIfNeeded()
47+
// let height = mainReviewView.tableView.contentSize.height + a
48+
// debugPrint("tableView height:\(mainReviewView.tableView.contentSize.height)")
49+
// debugPrint("a: \(a)")
50+
// mainReviewView.tableViewHeightConstraint?.update(offset: height) // 높이 업데이트
51+
// view.layoutIfNeeded()
52+
// }
53+
func updateTableViewHeight() {
54+
DispatchQueue.main.async {
55+
self.mainReviewView.tableView.layoutIfNeeded()
56+
let height = self.mainReviewView.tableView.contentSize.height
57+
debugPrint("tableView height: \(height)")
58+
self.mainReviewView.tableViewHeightConstraint?.update(offset: height)
59+
self.view.layoutIfNeeded()
60+
}
2761
}
2862

2963
override func configureUI() {

EATSSU/App/Sources/Presentation/Review/WritingReviewModalViewController.swift

+36-2
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,10 @@ final class WritingReviewModalViewController: BaseViewController {
1919
private var userPickedImage: UIImage?
2020

2121
// MARK: - UI Components
22+
23+
// FIXME: - Menu Feedback View TEST
24+
let menus = ["고구마치즈돈까스", "막국수", "단무지", "요구르트", "파전", "설렁탕"]
25+
2226

2327
private var rateView = RateView()
2428
private let imagePickerController = UIImagePickerController()
@@ -98,10 +102,33 @@ final class WritingReviewModalViewController: BaseViewController {
98102
// let button = UIButton(configuration: config)
99103
// return button
100104
// }()
105+
106+
// lazy var sv: UIStackView = {
107+
// let mf = MenuFeedbackView()
108+
// mf.configure(with: "떡국")
109+
// let sv = UIStackView(arrangedSubviews: [mf])
110+
// sv.axis = .vertical
111+
// return sv
112+
// }()
113+
114+
let sv: MenuFeedbackView = {
115+
let a = MenuFeedbackView()
116+
a.configure(with: "고구마치즈돈까스")
117+
return a
118+
}()
101119

102120
override func viewDidLoad() {
103121
super.viewDidLoad()
122+
104123
setDelegate()
124+
125+
126+
127+
// for menu in menus {
128+
// let menuView = MenuFeedbackView()
129+
// menuView.configure(with: menu)
130+
// sv.addSubview(menuView)
131+
// }
105132
}
106133

107134
override func viewWillAppear(_: Bool) {
@@ -120,6 +147,7 @@ final class WritingReviewModalViewController: BaseViewController {
120147
titleLabel,
121148
questionLabel,
122149
rateView,
150+
sv,
123151
maximumWordLabel,
124152
selectImageButton,
125153
userReviewImageView,
@@ -144,9 +172,15 @@ final class WritingReviewModalViewController: BaseViewController {
144172
make.centerX.equalToSuperview()
145173
make.height.equalTo(24)
146174
}
175+
176+
sv.snp.makeConstraints { make in
177+
make.top.equalTo(rateView.snp.bottom).offset(40)
178+
make.horizontalEdges.equalToSuperview().inset(48)
179+
make.height.equalTo(28)
180+
}
147181

148182
userReviewTextView.snp.makeConstraints { make in
149-
make.top.equalTo(rateView.snp.bottom).offset(40)
183+
make.top.equalTo(sv.snp.bottom).offset(40)
150184
make.leading.equalToSuperview().offset(16)
151185
make.trailing.equalToSuperview().offset(-16)
152186
make.height.equalTo(181)
@@ -192,7 +226,7 @@ final class WritingReviewModalViewController: BaseViewController {
192226

193227
@objc
194228
func didTappedimageView() {
195-
userReviewImageView.image = nil // 이미지 삭제
229+
userReviewImageView.image = nil
196230
userPickedImage = nil
197231
}
198232

0 commit comments

Comments
 (0)