From 3356aec1cd043da0e4d00dca4a30757e305ef449 Mon Sep 17 00:00:00 2001 From: Ching Date: Tue, 2 May 2023 15:10:13 +0800 Subject: [PATCH] =?UTF-8?q?feat(Views):=20=E5=A2=9E=E5=8A=A0=20NewTweet=20?= =?UTF-8?q?=E9=A1=B5=E9=9D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 增加 NewTweet 页面 Signed-off-by: Ching --- .../dudu-tweet.xcodeproj/project.pbxproj | 32 +++++++++++ .../UserInterfaceState.xcuserstate | Bin 54016 -> 62544 bytes .../dudu-tweet/Core/Components/TextArea.swift | 40 +++++++++++++ .../dudu-tweet/Core/Feed/View/FeedView.swift | 30 ++++++++-- .../Core/UploadTweet/Views/NewTweetView.swift | 53 ++++++++++++++++++ 5 files changed, 151 insertions(+), 4 deletions(-) create mode 100644 dudu-tweet/dudu-tweet/Core/Components/TextArea.swift create mode 100644 dudu-tweet/dudu-tweet/Core/UploadTweet/Views/NewTweetView.swift diff --git a/dudu-tweet/dudu-tweet.xcodeproj/project.pbxproj b/dudu-tweet/dudu-tweet.xcodeproj/project.pbxproj index 3fe972a..3e1a348 100644 --- a/dudu-tweet/dudu-tweet.xcodeproj/project.pbxproj +++ b/dudu-tweet/dudu-tweet.xcodeproj/project.pbxproj @@ -24,6 +24,8 @@ 24A59AD22A00BE14009C9E3E /* SideMenuViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 24A59AD12A00BE14009C9E3E /* SideMenuViewModel.swift */; }; 24A59AD42A00C07D009C9E3E /* UserStatsView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 24A59AD32A00C07D009C9E3E /* UserStatsView.swift */; }; 24A59AD62A00CA82009C9E3E /* SideMenuOptionRowView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 24A59AD52A00CA82009C9E3E /* SideMenuOptionRowView.swift */; }; + 24A59ADD2A00DB9F009C9E3E /* NewTweetView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 24A59ADC2A00DB9F009C9E3E /* NewTweetView.swift */; }; + 24A59ADF2A00DCC2009C9E3E /* TextArea.swift in Sources */ = {isa = PBXBuildFile; fileRef = 24A59ADE2A00DCC2009C9E3E /* TextArea.swift */; }; /* End PBXBuildFile section */ /* Begin PBXFileReference section */ @@ -46,6 +48,8 @@ 24A59AD12A00BE14009C9E3E /* SideMenuViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SideMenuViewModel.swift; sourceTree = ""; }; 24A59AD32A00C07D009C9E3E /* UserStatsView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UserStatsView.swift; sourceTree = ""; }; 24A59AD52A00CA82009C9E3E /* SideMenuOptionRowView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SideMenuOptionRowView.swift; sourceTree = ""; }; + 24A59ADC2A00DB9F009C9E3E /* NewTweetView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NewTweetView.swift; sourceTree = ""; }; + 24A59ADE2A00DCC2009C9E3E /* TextArea.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TextArea.swift; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -102,6 +106,7 @@ 2492CC1B2A00228F0086C525 /* Core */ = { isa = PBXGroup; children = ( + 24A59AD72A00DB49009C9E3E /* UploadTweet */, 24A59ACA2A00BDA1009C9E3E /* SideMenu */, 2492CC212A0022C30086C525 /* Components */, 24A59AB82A00308E009C9E3E /* Profile */, @@ -149,6 +154,7 @@ children = ( 24A59AC72A00BA6A009C9E3E /* Users */, 2492CC262A0025A50086C525 /* Tweets */, + 24A59ADE2A00DCC2009C9E3E /* TextArea.swift */, ); path = Components; sourceTree = ""; @@ -284,6 +290,30 @@ path = ViewModels; sourceTree = ""; }; + 24A59AD72A00DB49009C9E3E /* UploadTweet */ = { + isa = PBXGroup; + children = ( + 24A59AD92A00DB67009C9E3E /* ViewModels */, + 24A59AD82A00DB5A009C9E3E /* Views */, + ); + path = UploadTweet; + sourceTree = ""; + }; + 24A59AD82A00DB5A009C9E3E /* Views */ = { + isa = PBXGroup; + children = ( + 24A59ADC2A00DB9F009C9E3E /* NewTweetView.swift */, + ); + path = Views; + sourceTree = ""; + }; + 24A59AD92A00DB67009C9E3E /* ViewModels */ = { + isa = PBXGroup; + children = ( + ); + path = ViewModels; + sourceTree = ""; + }; /* End PBXGroup section */ /* Begin PBXNativeTarget section */ @@ -364,7 +394,9 @@ 2492CC0D2A000EB00086C525 /* dudu_tweetApp.swift in Sources */, 24A59ABA2A0030CB009C9E3E /* ExploreView.swift in Sources */, 24A59AD22A00BE14009C9E3E /* SideMenuViewModel.swift in Sources */, + 24A59ADF2A00DCC2009C9E3E /* TextArea.swift in Sources */, 24A59AD62A00CA82009C9E3E /* SideMenuOptionRowView.swift in Sources */, + 24A59ADD2A00DB9F009C9E3E /* NewTweetView.swift in Sources */, 24A59AC92A00BA81009C9E3E /* UserRowView.swift in Sources */, 24A59AB42A002EB8009C9E3E /* MainTabView.swift in Sources */, 24A59ABC2A0030EC009C9E3E /* NotificationsView.swift in Sources */, diff --git a/dudu-tweet/dudu-tweet.xcodeproj/project.xcworkspace/xcuserdata/ching.xcuserdatad/UserInterfaceState.xcuserstate b/dudu-tweet/dudu-tweet.xcodeproj/project.xcworkspace/xcuserdata/ching.xcuserdatad/UserInterfaceState.xcuserstate index 514da776550d2efb982adbbfd362b457c8f0f347..5c21ca72f4ff9f420a343eb5b68c5d5f7a2fbbd9 100644 GIT binary patch literal 62544 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 diff --git a/dudu-tweet/dudu-tweet/Core/Components/TextArea.swift b/dudu-tweet/dudu-tweet/Core/Components/TextArea.swift new file mode 100644 index 0000000..f95a77d --- /dev/null +++ b/dudu-tweet/dudu-tweet/Core/Components/TextArea.swift @@ -0,0 +1,40 @@ +// +// TextArea.swift +// dudu-tweet +// +// Created by ching on 2023/5/2. +// + +import SwiftUI + +struct TextArea: View { + @Binding var text: String + let placeholder: String + + init(_ placeholder: String, text: Binding) { + self.placeholder = placeholder + self._text = text + UITextView.appearance().backgroundColor = .clear + } + + var body: some View { + ZStack(alignment: .topLeading) { + TextEditor(text: $text) + .padding(4) + + if text.isEmpty { + Text(placeholder) + .foregroundColor(Color(.placeholderText)) + .padding(.horizontal, 8) + .padding(.vertical, 12) + } + } + .font(.body) + } +} + +// struct TextArea_Previews: PreviewProvider { +// static var previews: some View { +// TextArea("preview text") +// } +// } diff --git a/dudu-tweet/dudu-tweet/Core/Feed/View/FeedView.swift b/dudu-tweet/dudu-tweet/Core/Feed/View/FeedView.swift index 969a93b..1e33046 100644 --- a/dudu-tweet/dudu-tweet/Core/Feed/View/FeedView.swift +++ b/dudu-tweet/dudu-tweet/Core/Feed/View/FeedView.swift @@ -8,13 +8,35 @@ import SwiftUI struct FeedView: View { + @State private var showNewTweetView = false + var body: some View { - ScrollView { - LazyVStack { - ForEach(0 ... 20, id: \.self) { _ in - TweetRowView() + ZStack(alignment: .bottomTrailing) { + ScrollView { + LazyVStack { + ForEach(0 ... 20, id: \.self) { _ in + TweetRowView() + } } } + + Button { + showNewTweetView.toggle() + } label: { + Image(systemName: "square.and.pencil") + .resizable() + .renderingMode(.template) + .frame(width: 28, height: 28) + .padding() + } + .background(Color(.systemBlue)) + .foregroundColor(.white) + .clipShape(Circle()) + .padding() + .fullScreenCover(isPresented: $showNewTweetView) { + NewTweetView() + } + } } } diff --git a/dudu-tweet/dudu-tweet/Core/UploadTweet/Views/NewTweetView.swift b/dudu-tweet/dudu-tweet/Core/UploadTweet/Views/NewTweetView.swift new file mode 100644 index 0000000..c949bdd --- /dev/null +++ b/dudu-tweet/dudu-tweet/Core/UploadTweet/Views/NewTweetView.swift @@ -0,0 +1,53 @@ +// +// NewTweetView.swift +// dudu-tweet +// +// Created by ching on 2023/5/2. +// + +import SwiftUI + +struct NewTweetView: View { + @State private var caption = "" + @Environment(\.presentationMode) var presentationMode + var body: some View { + VStack { + HStack { + Button { + presentationMode.wrappedValue.dismiss() + } label: { + Text("Cancel") + .foregroundColor(Color(.systemBlue)) + } + + Spacer() + + Button { + print("tweet this..") + } label: { + Text("Tweet") + .bold() + .padding(.horizontal) + .padding(.vertical, 8) + .background(Color(.systemBlue)) + .foregroundColor(.white) + .clipShape(Capsule()) + } + } + .padding() + + HStack(alignment: .top) { + Circle() + .frame(width: 64, height: 64) + TextArea("What's happening?", text: $caption) + } + .padding() + } + } +} + +struct NewTweetView_Previews: PreviewProvider { + static var previews: some View { + NewTweetView() + } +}