Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[HOTFIX] 동네인증 프로세스 UI 재머지 (#35) #36

Merged
merged 2 commits into from
Jan 16, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
40 changes: 40 additions & 0 deletions ACON-iOS/ACON-iOS.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -82,6 +82,12 @@
74B25C2E2D2FEFD3008BDCB7 /* Debug.xcconfig in Resources */ = {isa = PBXBuildFile; fileRef = 74B25C2D2D2FEFD3008BDCB7 /* Debug.xcconfig */; };
74B25C302D2FEFE1008BDCB7 /* Release.xcconfig in Resources */ = {isa = PBXBuildFile; fileRef = 74B25C2F2D2FEFE1008BDCB7 /* Release.xcconfig */; };
74B25C322D2FF022008BDCB7 /* Shared.xcconfig in Resources */ = {isa = PBXBuildFile; fileRef = 74B25C312D2FF022008BDCB7 /* Shared.xcconfig */; };
74BF92102D391FFE00B923E3 /* LocalVerificationFinishedView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74BF920A2D391FFE00B923E3 /* LocalVerificationFinishedView.swift */; };
74BF92112D391FFE00B923E3 /* LocalVerificationViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74BF920D2D391FFE00B923E3 /* LocalVerificationViewController.swift */; };
74BF92122D391FFE00B923E3 /* LocalMapViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74BF92092D391FFE00B923E3 /* LocalMapViewController.swift */; };
74BF92132D391FFE00B923E3 /* LocalVerificationFinishedViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74BF920B2D391FFE00B923E3 /* LocalVerificationFinishedViewController.swift */; };
74BF92142D391FFE00B923E3 /* LocalMapView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74BF92082D391FFE00B923E3 /* LocalMapView.swift */; };
74BF92152D391FFE00B923E3 /* LocalVerificationView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74BF920C2D391FFE00B923E3 /* LocalVerificationView.swift */; };
74CDCE542D310A1C00E3A21A /* ACFontStyleType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74CDCE532D310A1100E3A21A /* ACFontStyleType.swift */; };
74CDCE562D310B1600E3A21A /* String+.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74CDCE552D310B1300E3A21A /* String+.swift */; };
/* End PBXBuildFile section */
Expand Down Expand Up @@ -158,6 +164,12 @@
74B25C2D2D2FEFD3008BDCB7 /* Debug.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Debug.xcconfig; sourceTree = "<group>"; };
74B25C2F2D2FEFE1008BDCB7 /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Release.xcconfig; sourceTree = "<group>"; };
74B25C312D2FF022008BDCB7 /* Shared.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Shared.xcconfig; sourceTree = "<group>"; };
74BF92082D391FFE00B923E3 /* LocalMapView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LocalMapView.swift; sourceTree = "<group>"; };
74BF92092D391FFE00B923E3 /* LocalMapViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LocalMapViewController.swift; sourceTree = "<group>"; };
74BF920A2D391FFE00B923E3 /* LocalVerificationFinishedView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LocalVerificationFinishedView.swift; sourceTree = "<group>"; };
74BF920B2D391FFE00B923E3 /* LocalVerificationFinishedViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LocalVerificationFinishedViewController.swift; sourceTree = "<group>"; };
74BF920C2D391FFE00B923E3 /* LocalVerificationView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LocalVerificationView.swift; sourceTree = "<group>"; };
74BF920D2D391FFE00B923E3 /* LocalVerificationViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LocalVerificationViewController.swift; sourceTree = "<group>"; };
74CDCE532D310A1100E3A21A /* ACFontStyleType.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ACFontStyleType.swift; sourceTree = "<group>"; };
74CDCE552D310B1300E3A21A /* String+.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "String+.swift"; sourceTree = "<group>"; };
B28431BAB67B99CD7B85C705 /* Pods_ACON_iOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_ACON_iOS.framework; sourceTree = BUILT_PRODUCTS_DIR; };
Expand Down Expand Up @@ -421,6 +433,7 @@
748D6F702D2BCA46007690B4 /* Presentation */ = {
isa = PBXGroup;
children = (
74BF920F2D391FFE00B923E3 /* LocalVerification */,
74220DD12D34361E000684BF /* Upload */,
1547A87B2D358DBE00E96616 /* SpotListFilter */,
1558BADF2D31D41400ECDEF8 /* Profile */,
Expand Down Expand Up @@ -600,6 +613,27 @@
name = Products;
sourceTree = "<group>";
};
74BF920E2D391FFE00B923E3 /* View */ = {
isa = PBXGroup;
children = (
74BF92082D391FFE00B923E3 /* LocalMapView.swift */,
74BF92092D391FFE00B923E3 /* LocalMapViewController.swift */,
74BF920A2D391FFE00B923E3 /* LocalVerificationFinishedView.swift */,
74BF920B2D391FFE00B923E3 /* LocalVerificationFinishedViewController.swift */,
74BF920C2D391FFE00B923E3 /* LocalVerificationView.swift */,
74BF920D2D391FFE00B923E3 /* LocalVerificationViewController.swift */,
);
path = View;
sourceTree = "<group>";
};
74BF920F2D391FFE00B923E3 /* LocalVerification */ = {
isa = PBXGroup;
children = (
74BF920E2D391FFE00B923E3 /* View */,
);
path = LocalVerification;
sourceTree = "<group>";
};
/* End PBXGroup section */

/* Begin PBXNativeTarget section */
Expand Down Expand Up @@ -785,6 +819,12 @@
74CDCE542D310A1C00E3A21A /* ACFontStyleType.swift in Sources */,
748D6F802D2BCD94007690B4 /* ObservablePattern.swift in Sources */,
1558BADE2D31AB6C00ECDEF8 /* SpotListViewController.swift in Sources */,
74BF92102D391FFE00B923E3 /* LocalVerificationFinishedView.swift in Sources */,
74BF92112D391FFE00B923E3 /* LocalVerificationViewController.swift in Sources */,
74BF92122D391FFE00B923E3 /* LocalMapViewController.swift in Sources */,
74BF92132D391FFE00B923E3 /* LocalVerificationFinishedViewController.swift in Sources */,
74BF92142D391FFE00B923E3 /* LocalMapView.swift in Sources */,
74BF92152D391FFE00B923E3 /* LocalVerificationView.swift in Sources */,
1547A8732D34157700E96616 /* SpotListViewModel.swift in Sources */,
748D6FA42D2C3C48007690B4 /* BaseNavViewController.swift in Sources */,
1558BADB2D31AAF900ECDEF8 /* ACTabBarItemType.swift in Sources */,
Expand Down
30 changes: 30 additions & 0 deletions ACON-iOS/ACON-iOS/Global/Extensions/UIButton+.swift
Original file line number Diff line number Diff line change
Expand Up @@ -30,4 +30,34 @@ extension UIButton {
self.setAttributedTitle(attributedString, for: state)
}

func setPartialTitle(
fullText: String,
textStyles: [(text: String, style: ACFontStyleType, color: UIColor)]
) {
let attributedString = NSMutableAttributedString(string: fullText)

textStyles.forEach { textStyle in
if let range = fullText.range(of: textStyle.text) {
let nsRange = NSRange(range, in: fullText)
let attributes: [NSAttributedString.Key: Any] = [
.font: textStyle.style.font,
.kern: textStyle.style.kerning,
.paragraphStyle: {
let paragraphStyle = NSMutableParagraphStyle()
paragraphStyle.minimumLineHeight = textStyle.style.lineHeight
paragraphStyle.maximumLineHeight = textStyle.style.lineHeight
return paragraphStyle
}(),
.foregroundColor: textStyle.color
]

attributes.forEach { key, value in
attributedString.addAttribute(key, value: value, range: nsRange)
}
}
}

self.setAttributedTitle(attributedString, for: state)
}

}
13 changes: 13 additions & 0 deletions ACON-iOS/ACON-iOS/Global/Extensions/UIViewController+.swift
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,19 @@ extension UIViewController {
}
}

func setMiddleSheetLayout() {
self.modalPresentationStyle = .pageSheet

if let sheet = self.sheetPresentationController {
let sheetUtils = SheetUtils()
sheet.detents = [sheetUtils.acMiddleDetent]
sheet.prefersScrollingExpandsWhenScrolledToEdge = false
sheet.prefersGrabberVisible = false

sheet.selectedDetentIdentifier = sheetUtils.middleDetentIdentifier
}
}

func setLongSheetLayout() {
self.modalPresentationStyle = .pageSheet

Expand Down
31 changes: 31 additions & 0 deletions ACON-iOS/ACON-iOS/Global/Literals/StringLiterals.swift
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,8 @@ enum StringLiterals {

static let shortDetent = "acShortDetent"

static let middleDetent = "acMiddleDetent"

static let longDetent = "acLongDetent"

}
Expand Down Expand Up @@ -101,4 +103,33 @@ enum StringLiterals {

}

enum LocalVerification {

static let needLocalVerification = "로컬 맛집 추천을 위해\n지역 인증이 필요해요."

static let doLocalVerification = "자주 가는 동네로 지역 인증을 해보세요"

static let new = "새로운"

static let verifyLocal = " 나의 동네 인증하기"

static let next = "다음"

static let finishVerification = "인증완료"

static let letsStart = "시작하기"

static let locateOnMap = "지도에서 위치 확인하기"

static let now = "이제 "

static let localAcornTitle = "에\n로컬 도토리를 떨어트릴 수 있어요!"

static let localAcornExplaination = "로컬 도토리는 로컬 맛집을 보증하는 도토리에요.\n만족스러운 식사 후 리뷰에 사용해보세요!"

static let localAcorn = "로컬 도토리"

static let plainAcorn = "일반 도토리"
}

}
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
{
"colors" : [
{
"color" : {
"color-space" : "display-p3",
"components" : {
"alpha" : "0.600",
"blue" : "0x00",
"green" : "0x00",
"red" : "0x00"
}
},
"idiom" : "universal"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
{
"info" : {
"author" : "xcode",
"version" : 1
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
{
"images" : [
{
"filename" : "ic_radio_20.svg",
"idiom" : "universal"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
{
"images" : [
{
"filename" : "ic_radio_pressed_20.svg",
"idiom" : "universal"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
{
"images" : [
{
"filename" : "ic_local acon.svg",
"idiom" : "universal"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
{
"images" : [
{
"filename" : "ic_normal acon.svg",
"idiom" : "universal"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading