-
Notifications
You must be signed in to change notification settings - Fork 0
[Feature] 멤버 디테일 UI 작업 #7
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
Merged
Merged
Changes from all commits
Commits
Show all changes
17 commits
Select commit
Hold shift + click to select a range
2be6727
[feat] CardStyleView 추가
minneee 150e526
[feat] 팀원 프로필 뷰 추가
minneee 7c88f1b
팀원 자기소개 뷰 추가, 프로필 뷰의 폰트, 사이즈, 색 조절
minneee 43a202c
오타 수정
minneee 1460145
주요장점 뷰 추가
minneee 81056d5
[feat]팀원 자기소개 뷰 추가, 프로필 뷰의 폰트, 사이즈, 색 조절
minneee 4fc924a
오타 수정
minneee 19f1760
[feat]주요장점 뷰 추가
minneee d428bcd
Merge remote-tracking branch 'origin/feature/member_detail' into feat…
minneee a76f266
[feat] 협업스타일, 블로그 주소 뷰 추가
minneee 4f99e4c
오타 수정
minneee 07a37ce
[feat] 스크롤 뷰 추가
minneee e7d3e3d
[feat]모델 한번만 생성하도록 변경
minneee fbaa8a6
[feat]필요없는 VStack 제거
minneee 86d0bcf
오타 수정
minneee a93254a
[chore]CardStyle 디자인 시스템으로 이동
minneee bb8511a
[chore] 뷰 분리
minneee File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
31 changes: 31 additions & 0 deletions
31
TeamIntroduce/TeamIntroduce/Sources/DesignSytstem/Modifier/CardStyle.swift
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,31 @@ | ||
| // | ||
| // CardStyle.swift | ||
| // TeamIntroduce | ||
| // | ||
| // Created by 김민희 on 8/12/25. | ||
| // | ||
|
|
||
| import SwiftUI | ||
|
|
||
| struct CardStyle: ViewModifier { | ||
| func body(content: Content) -> some View { | ||
| content | ||
| .padding(15) | ||
| .frame(maxWidth: .infinity, alignment: .leading) | ||
| .background( | ||
| RoundedRectangle(cornerRadius: 16) | ||
| .fill(.staticWhite) | ||
| ) | ||
| .overlay( | ||
| RoundedRectangle(cornerRadius: 16) | ||
| .stroke(.borderInactive, lineWidth: 0.5) | ||
| ) | ||
| .shadow(color: .shadowDefault, radius: 3, x: 0, y: 1) | ||
| } | ||
| } | ||
|
|
||
| extension View { | ||
| public func cardStyle() -> some View { | ||
| modifier(CardStyle()) | ||
| } | ||
| } |
23 changes: 23 additions & 0 deletions
23
TeamIntroduce/TeamIntroduce/Sources/Presnetaion/MemberDetail/BlogView.swift
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,23 @@ | ||
| // | ||
| // BlogView.swift | ||
| // TeamIntroduce | ||
| // | ||
| // Created by 김민희 on 8/12/25. | ||
| // | ||
| import SwiftUI | ||
|
|
||
| struct BlogView: View { | ||
| let profile: MemberProfile | ||
|
|
||
| var body: some View { | ||
| VStack(alignment: .leading, spacing: 14) { | ||
| Text("블로그") | ||
| .pretendardFont(family: .SemiBold, size: 14) | ||
|
|
||
| Text(profile.blogURL) | ||
| .pretendardFont(family: .Regular, size: 13) | ||
| .cardStyle() | ||
|
|
||
| } | ||
| } | ||
| } |
23 changes: 23 additions & 0 deletions
23
TeamIntroduce/TeamIntroduce/Sources/Presnetaion/MemberDetail/CollabStyleView.swift
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,23 @@ | ||
| // | ||
| // CollabStyleView.swift | ||
| // TeamIntroduce | ||
| // | ||
| // Created by 김민희 on 8/12/25. | ||
| // | ||
| import SwiftUI | ||
|
|
||
| struct CollabStyleView: View { | ||
| let profile: MemberProfile | ||
|
|
||
| var body: some View { | ||
| VStack(alignment: .leading, spacing: 14) { | ||
| Text("협업스타일") | ||
| .pretendardFont(family: .SemiBold, size: 14) | ||
| Text(profile.collabStyle) | ||
| .pretendardFont(family: .Regular, size: 13) | ||
| .foregroundStyle(.textSecondary100) | ||
| .lineSpacing(5) | ||
| .cardStyle() | ||
| } | ||
| } | ||
| } |
20 changes: 20 additions & 0 deletions
20
TeamIntroduce/TeamIntroduce/Sources/Presnetaion/MemberDetail/EditButton.swift
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,20 @@ | ||
| // | ||
| // EditButton.swift | ||
| // TeamIntroduce | ||
| // | ||
| // Created by 김민희 on 8/12/25. | ||
| // | ||
| import SwiftUI | ||
|
|
||
| struct EditButton: View { | ||
| var body: some View { | ||
| Button(action: {}) { | ||
| Text("수정") | ||
| .foregroundColor(.white) | ||
| } | ||
| .frame(maxWidth: .infinity) | ||
| .frame(height: 48) | ||
| .background(.backGroundPrimary) | ||
| .clipShape(RoundedRectangle(cornerRadius: 16)) | ||
| } | ||
| } |
23 changes: 23 additions & 0 deletions
23
TeamIntroduce/TeamIntroduce/Sources/Presnetaion/MemberDetail/IntroductionView.swift
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,23 @@ | ||
| // | ||
| // IntroductionView.swift | ||
| // TeamIntroduce | ||
| // | ||
| // Created by 김민희 on 8/12/25. | ||
| // | ||
| import SwiftUI | ||
|
|
||
| struct IntroductionView: View { | ||
| let profile: MemberProfile | ||
|
|
||
| var body: some View { | ||
| VStack(alignment: .leading, spacing: 14) { | ||
| Text("자기소개") | ||
| .pretendardFont(family: .SemiBold, size: 14) | ||
| Text(profile.introduction) | ||
| .pretendardFont(family: .Regular, size: 13) | ||
| .foregroundStyle(.textSecondary100) | ||
| .lineSpacing(5) | ||
| .cardStyle() | ||
| } | ||
| } | ||
| } |
48 changes: 48 additions & 0 deletions
48
TeamIntroduce/TeamIntroduce/Sources/Presnetaion/MemberDetail/MemberDetailView.swift
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,48 @@ | ||
| // | ||
| // MemberDetailView.swift | ||
| // TeamIntroduce | ||
| // | ||
| // Created by 김민희 on 8/11/25. | ||
| // | ||
|
|
||
| import SwiftUI | ||
|
|
||
| struct MemberProfile { | ||
| var image: String = "person.crop.circle" | ||
| var name: String = "김철수" | ||
| var role: String = "프론트엔드개발자" | ||
| var mbti: String = "ENFP" | ||
| var introduction: String = "사용자경험을최우선으로생각하는프론트엔드개발자입니다.새로운기술을배우는것을좋아하고,팀원들과아이디어를 공유하며함께성장하는것을즐깁니다." | ||
| var strengths: [String] = ["창의적인문제해결능력", "새로운기술에대한빠른학습력", "사용자중심적사고", "긍정적이고적극적인커뮤니케이션"] | ||
| var collabStyle: String = "아이디어를 자유롭게공유하고,다양한관점에서문제를바라보는것을 선호합니다.팀원들의의견을경청하고,함께더나은해결책을찾아가는협업을추구합니다." | ||
| var blogURL: String = "https: //chulsoo.dev" | ||
| } | ||
|
|
||
| struct MemberDetailView: View { | ||
| private let profile = MemberProfile() | ||
|
|
||
| var body: some View { | ||
| ScrollView { | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 굳이 vstack 안쓰고 내부안에 스크롤 할 방식을 선택 할수 있습니다 |
||
| VStack(spacing: 20) { | ||
| MemberProfileView(profile: profile) | ||
|
|
||
| IntroductionView(profile: profile) | ||
|
|
||
| StrengthsView(profile: profile) | ||
|
|
||
| CollabStyleView(profile: profile) | ||
|
|
||
| BlogView(profile: profile) | ||
|
|
||
| EditButton() | ||
| } | ||
| .padding(.horizontal, 14) | ||
| } | ||
| } | ||
| } | ||
|
|
||
| struct MemberDetailView_Previews: PreviewProvider { | ||
| static var previews: some View { | ||
| MemberDetailView() | ||
| } | ||
| } | ||
39 changes: 39 additions & 0 deletions
39
TeamIntroduce/TeamIntroduce/Sources/Presnetaion/MemberDetail/MemberProfileView.swift
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,39 @@ | ||
| // | ||
| // MemberProfileView.swift | ||
| // TeamIntroduce | ||
| // | ||
| // Created by 김민희 on 8/12/25. | ||
| // | ||
| import SwiftUI | ||
|
|
||
| struct MemberProfileView: View { | ||
| let profile: MemberProfile | ||
|
|
||
| var body: some View { | ||
| HStack { | ||
| Spacer() | ||
|
|
||
| VStack(spacing: 7) { | ||
| Image(systemName: profile.image) | ||
| .font(.system(size: 40)) | ||
|
|
||
| Text(profile.name) | ||
| .pretendardFont(family: .Regular, size: 13) | ||
|
|
||
| Text(profile.role) | ||
| .pretendardFont(family: .Regular, size: 13) | ||
| .foregroundStyle(.textSecondary100) | ||
|
|
||
|
|
||
| Text(profile.mbti) | ||
| .pretendardFont(family: .Regular, size: 13) | ||
| .padding(.horizontal, 12) | ||
| .padding(.vertical, 6) | ||
| .background(Capsule().fill(.gray20)) | ||
| } | ||
|
|
||
| Spacer() | ||
| } | ||
| .cardStyle() | ||
| } | ||
| } |
31 changes: 31 additions & 0 deletions
31
TeamIntroduce/TeamIntroduce/Sources/Presnetaion/MemberDetail/StrengthsView.swift
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,31 @@ | ||
| // | ||
| // StrengthsView.swift | ||
| // TeamIntroduce | ||
| // | ||
| // Created by 김민희 on 8/12/25. | ||
| // | ||
| import SwiftUI | ||
|
|
||
| struct StrengthsView: View { | ||
| let profile: MemberProfile | ||
|
|
||
| var body: some View { | ||
| VStack(alignment: .leading, spacing: 14) { | ||
| Text("주요장점") | ||
| .pretendardFont(family: .SemiBold, size: 14) | ||
| VStack { | ||
| ForEach(profile.strengths, id: \.self) { item in | ||
| HStack(alignment: .firstTextBaseline, spacing: 8) { | ||
| Circle().frame(width: 5, height: 5) | ||
| Text(item) | ||
| .pretendardFont(family: .Regular, size: 13) | ||
| .foregroundStyle(.textSecondary100) | ||
| .fixedSize(horizontal: false, vertical: true) | ||
| } | ||
| .frame(maxWidth: .infinity, alignment: .leading) | ||
| } | ||
| } | ||
| .cardStyle() | ||
| } | ||
| } | ||
| } |
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@minneee 좋습니다 !