@@ -107,6 +107,15 @@ final class SelectSentenceViewController: UIViewController, SelectSentencePresen
107
107
setupInitialView ( )
108
108
}
109
109
110
+ override func viewDidAppear( _ animated: Bool ) {
111
+ super. viewDidAppear ( animated)
112
+ guard let alreadyShow = UserDefaults . standard. object ( forKey: " ShowSwipeGuide " ) as? Bool ,
113
+ alreadyShow == false else {
114
+ return
115
+ }
116
+ showSwipeGuide ( )
117
+ }
118
+
110
119
private func setupInitialView( ) {
111
120
view. backgroundColor = . black
112
121
addSubviews ( )
@@ -146,15 +155,21 @@ final class SelectSentenceViewController: UIViewController, SelectSentencePresen
146
155
return
147
156
}
148
157
let imageRequestHandler = VNImageRequestHandler ( ciImage: ciImage, options: [ : ] )
158
+ private func showSwipeGuide( ) {
149
159
150
160
let request = VNRecognizeTextRequest { [ weak self] ( request, error) in
151
161
guard error == nil else {
152
162
Console . error ( error? . localizedDescription ?? " VNRecognizeTextRequestError " )
153
163
return
154
164
}
165
+ UIView . animate ( withDuration: 0.8 , delay: 0.0 , options: [ . curveEaseOut] ) { [ weak self] in
166
+ self ? . selectedPhotoCollectionView. contentOffset. x = 70
167
+ } completion: { _ in
155
168
156
169
guard let observations = request. results as? [ VNRecognizedTextObservation ] else {
157
170
return
171
+ UIView . animate ( withDuration: 0.2 , delay: 0.0 , options: [ . curveEaseInOut] ) { [ weak self] in
172
+ self ? . selectedPhotoCollectionView. contentOffset. x = 1
158
173
}
159
174
for observation in observations {
160
175
@@ -182,6 +197,7 @@ final class SelectSentenceViewController: UIViewController, SelectSentencePresen
182
197
} catch let error {
183
198
Console . error ( error. localizedDescription)
184
199
}
200
+ UserDefaults . standard. set ( true , forKey: " ShowSwipeGuide " )
185
201
}
186
202
187
203
// MARK: - SelectSentenceViewControllable
0 commit comments