質問編集履歴

5

解決方法の記載

2019/02/17 02:26

投稿

hik_
hik_

score0

test CHANGED
File without changes
test CHANGED
@@ -292,6 +292,124 @@
292
292
 
293
293
  ```
294
294
 
295
+ ### 追記 2/16 ②
296
+
297
+ ```ここに言語を入力
298
+
299
+ import UIKit
300
+
301
+
302
+
303
+ class ViewController: UIViewController {
304
+
305
+
306
+
307
+ var date:String = ""
308
+
309
+ var dateBox = [String]()
310
+
311
+ @IBOutlet weak var label: UILabel!
312
+
313
+
314
+
315
+
316
+
317
+ override func viewDidLoad() {
318
+
319
+ super.viewDidLoad()
320
+
321
+
322
+
323
+
324
+
325
+ }
326
+
327
+
328
+
329
+ // ViewControllerを表示する度に処理
330
+
331
+ override func viewWillAppear(_ animated: Bool) {
332
+
333
+
334
+
335
+
336
+
337
+
338
+
339
+ dateBox.append(date)
340
+
341
+ UserDefaults.standard.set(dateBox, forKey: "DateA")
342
+
343
+
344
+
345
+ let defaults = UserDefaults.standard
346
+
347
+ let set = defaults.string(forKey: "DateA")
348
+
349
+ label.text = set
350
+
351
+
352
+
353
+ }
354
+
355
+
356
+
357
+ }
358
+
359
+ ```
360
+
361
+
362
+
363
+ ```ここに言語を入力
364
+
365
+ import UIKit
366
+
367
+
368
+
369
+ class SecondViewController: UIViewController {
370
+
371
+
372
+
373
+
374
+
375
+
376
+
377
+ @IBOutlet weak var textField: UITextField!
378
+
379
+
380
+
381
+
382
+
383
+ override func viewDidLoad() {
384
+
385
+ super.viewDidLoad()
386
+
387
+
388
+
389
+ textField.keyboardType = UIKeyboardType.numberPad
390
+
391
+ }
392
+
393
+
394
+
395
+ override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
396
+
397
+ if segue.identifier == "aSegue" {
398
+
399
+ let ViewCon = segue.destination as! ViewController
400
+
401
+ ViewCon.date = textField.text // Value of optional type 'String?' must be unwrapped to a value of type 'String'
402
+
403
+ }
404
+
405
+ }
406
+
407
+
408
+
409
+ }
410
+
411
+ ```
412
+
295
413
 
296
414
 
297
415
  ### 補足情報(FW/ツールのバージョンなど)

4

情報の追加

2019/02/16 03:27

投稿

hik_
hik_

score0

test CHANGED
File without changes
test CHANGED
@@ -168,6 +168,132 @@
168
168
 
169
169
 
170
170
 
171
+ ### 追記 2/16
172
+
173
+ 色々調べているとoverride func prepareとoverride func viewWillAppear(_ animated: Bool)
174
+
175
+ が使えるのではと思い以下のコードを書きましたが、エラーが起きている状況です。
176
+
177
+ ```ここに言語を入力
178
+
179
+ import UIKit
180
+
181
+
182
+
183
+ class ViewController: UIViewController {
184
+
185
+
186
+
187
+ var date:String?
188
+
189
+ var dateBox = [String]()
190
+
191
+ @IBOutlet weak var label: UILabel!
192
+
193
+
194
+
195
+
196
+
197
+ override func viewDidLoad() {
198
+
199
+ super.viewDidLoad()
200
+
201
+
202
+
203
+
204
+
205
+ }
206
+
207
+
208
+
209
+ // ViewControllerを表示する度に処理
210
+
211
+ override func viewWillAppear(_ animated: Bool) {
212
+
213
+
214
+
215
+
216
+
217
+
218
+
219
+ dateBox.append(date!) //Thread 1: Fatal error: Unexpectedly found nil while unwrapping an Optional value
220
+
221
+
222
+
223
+ UserDefaults.standard.set(dateBox, forKey: "DateA")
224
+
225
+
226
+
227
+ let defaults = UserDefaults.standard
228
+
229
+ let set = defaults.string(forKey: "DateA")
230
+
231
+ label.text = set
232
+
233
+
234
+
235
+ }
236
+
237
+
238
+
239
+ }
240
+
241
+ ```
242
+
243
+
244
+
245
+ ```ここに言語を入力
246
+
247
+ import UIKit
248
+
249
+
250
+
251
+ class SecondViewController: UIViewController {
252
+
253
+
254
+
255
+
256
+
257
+
258
+
259
+ @IBOutlet weak var textField: UITextField!
260
+
261
+
262
+
263
+
264
+
265
+ override func viewDidLoad() {
266
+
267
+ super.viewDidLoad()
268
+
269
+
270
+
271
+ textField.keyboardType = UIKeyboardType.numberPad
272
+
273
+ }
274
+
275
+
276
+
277
+ override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
278
+
279
+ if segue.identifier == "aSegue" {
280
+
281
+ let ViewCon = segue.destination as! ViewController
282
+
283
+ ViewCon.date = textField.text
284
+
285
+ }
286
+
287
+ }
288
+
289
+
290
+
291
+ }
292
+
293
+ ```
294
+
295
+
296
+
171
297
  ### 補足情報(FW/ツールのバージョンなど)
172
298
 
173
299
  Swift4 Xcode10

3

情報の追加

2019/02/15 15:19

投稿

hik_
hik_

score0

test CHANGED
File without changes
test CHANGED
@@ -16,11 +16,17 @@
16
16
 
17
17
 
18
18
 
19
+ override func prepareで解決しないかも調べている状況です。
20
+
21
+
22
+
23
+
24
+
19
25
 
20
26
 
21
27
  ### 該当のソースコード
22
28
 
23
- 今現在分かる限りで書けているコードです。
29
+
24
30
 
25
31
  ```ここに言語名を入力
26
32
 
@@ -124,6 +130,36 @@
124
130
 
125
131
  ### 試したこと
126
132
 
133
+ UserDefaultsを調べていて、色々試している状況です。
134
+
135
+ ```ここに言語を入力
136
+
137
+ import UIKit
138
+
139
+
140
+
141
+ class ViewController: UIViewController {
142
+
143
+
144
+
145
+ @IBOutlet weak var label: UILabel!
146
+
147
+
148
+
149
+
150
+
151
+ override func viewDidLoad() {
152
+
153
+ super.viewDidLoad()
154
+
155
+ label.text = date //Cannot assign value of type '[String]' to type 'String?'
156
+
157
+ }
158
+
159
+ }
160
+
161
+ ```
162
+
127
163
 
128
164
 
129
165
  UserDefautlsの基本やLabelに表示させる方法を調べているのですが、まだ実装出来ていません。

2

情報の追加

2019/02/15 14:21

投稿

hik_
hik_

score0

test CHANGED
File without changes
test CHANGED
@@ -20,7 +20,7 @@
20
20
 
21
21
  ### 該当のソースコード
22
22
 
23
-
23
+ 今現在分かる限りで書けているコードです。
24
24
 
25
25
  ```ここに言語名を入力
26
26
 

1

書式の改善

2019/02/15 12:54

投稿

hik_
hik_

score0

test CHANGED
File without changes
test CHANGED
@@ -13,12 +13,6 @@
13
13
  TextFieldに入力された数をUserDefautlsに保存する という所までは作れたのですが、
14
14
 
15
15
  UserDfautlsに保存されたTextFieldの入力内容をどうやってLabelに表示するのかが分からない状況です。
16
-
17
-
18
-
19
- override func prepareで解決しないかも調べている状況です。
20
-
21
-
22
16
 
23
17
 
24
18
 
@@ -130,36 +124,6 @@
130
124
 
131
125
  ### 試したこと
132
126
 
133
- UserDefaultsを調べていて、色々試している状況です。
134
-
135
- ```ここに言語を入力
136
-
137
- import UIKit
138
-
139
-
140
-
141
- class ViewController: UIViewController {
142
-
143
-
144
-
145
- @IBOutlet weak var label: UILabel!
146
-
147
-
148
-
149
-
150
-
151
- override func viewDidLoad() {
152
-
153
- super.viewDidLoad()
154
-
155
- label.text = date //Cannot assign value of type '[String]' to type 'String?'
156
-
157
- }
158
-
159
- }
160
-
161
- ```
162
-
163
127
 
164
128
 
165
129
  UserDefautlsの基本やLabelに表示させる方法を調べているのですが、まだ実装出来ていません。
@@ -168,356 +132,6 @@
168
132
 
169
133
 
170
134
 
171
- ### 追記 2/16
172
-
173
- 色々調べているとoverride func prepareとoverride func viewWillAppear(_ animated: Bool)
174
-
175
- が使えるのではと思い以下のコードを書きましたが、エラーが起きている状況です。
176
-
177
- ```ここに言語を入力
178
-
179
- import UIKit
180
-
181
-
182
-
183
- class ViewController: UIViewController {
184
-
185
-
186
-
187
- var date:String?
188
-
189
- var dateBox = [String]()
190
-
191
- @IBOutlet weak var label: UILabel!
192
-
193
-
194
-
195
-
196
-
197
- override func viewDidLoad() {
198
-
199
- super.viewDidLoad()
200
-
201
-
202
-
203
-
204
-
205
- }
206
-
207
-
208
-
209
- // ViewControllerを表示する度に処理
210
-
211
- override func viewWillAppear(_ animated: Bool) {
212
-
213
-
214
-
215
-
216
-
217
-
218
-
219
- dateBox.append(date!) //Thread 1: Fatal error: Unexpectedly found nil while unwrapping an Optional value
220
-
221
-
222
-
223
- UserDefaults.standard.set(dateBox, forKey: "DateA")
224
-
225
-
226
-
227
- let defaults = UserDefaults.standard
228
-
229
- let set = defaults.string(forKey: "DateA")
230
-
231
- label.text = set
232
-
233
-
234
-
235
- }
236
-
237
-
238
-
239
- }
240
-
241
- ```
242
-
243
-
244
-
245
- ```ここに言語を入力
246
-
247
- import UIKit
248
-
249
-
250
-
251
- class SecondViewController: UIViewController {
252
-
253
-
254
-
255
-
256
-
257
-
258
-
259
- @IBOutlet weak var textField: UITextField!
260
-
261
-
262
-
263
-
264
-
265
- override func viewDidLoad() {
266
-
267
- super.viewDidLoad()
268
-
269
-
270
-
271
- textField.keyboardType = UIKeyboardType.numberPad
272
-
273
- }
274
-
275
-
276
-
277
- override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
278
-
279
- if segue.identifier == "aSegue" {
280
-
281
- let ViewCon = segue.destination as! ViewController
282
-
283
- ViewCon.date = textField.text
284
-
285
- }
286
-
287
- }
288
-
289
-
290
-
291
- }
292
-
293
- ```
294
-
295
- ### 追記 2/16 ②
296
-
297
- ```ここに言語を入力
298
-
299
- import UIKit
300
-
301
-
302
-
303
- class ViewController: UIViewController {
304
-
305
-
306
-
307
- var date:String = ""
308
-
309
- var dateBox = [String]()
310
-
311
- @IBOutlet weak var label: UILabel!
312
-
313
-
314
-
315
-
316
-
317
- override func viewDidLoad() {
318
-
319
- super.viewDidLoad()
320
-
321
-
322
-
323
-
324
-
325
- }
326
-
327
-
328
-
329
- // ViewControllerを表示する度に処理
330
-
331
- override func viewWillAppear(_ animated: Bool) {
332
-
333
-
334
-
335
-
336
-
337
-
338
-
339
- dateBox.append(date)
340
-
341
- UserDefaults.standard.set(dateBox, forKey: "DateA")
342
-
343
-
344
-
345
- let defaults = UserDefaults.standard
346
-
347
- let set = defaults.string(forKey: "DateA")
348
-
349
- label.text = set
350
-
351
-
352
-
353
- }
354
-
355
-
356
-
357
- }
358
-
359
- ```
360
-
361
-
362
-
363
- ```ここに言語を入力
364
-
365
- import UIKit
366
-
367
-
368
-
369
- class SecondViewController: UIViewController {
370
-
371
-
372
-
373
-
374
-
375
-
376
-
377
- @IBOutlet weak var textField: UITextField!
378
-
379
-
380
-
381
-
382
-
383
- override func viewDidLoad() {
384
-
385
- super.viewDidLoad()
386
-
387
-
388
-
389
- textField.keyboardType = UIKeyboardType.numberPad
390
-
391
- }
392
-
393
-
394
-
395
- override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
396
-
397
- if segue.identifier == "aSegue" {
398
-
399
- let ViewCon = segue.destination as! ViewController
400
-
401
- ViewCon.date = textField.text // Value of optional type 'String?' must be unwrapped to a value of type 'String'
402
-
403
- }
404
-
405
- }
406
-
407
-
408
-
409
- }
410
-
411
- ```
412
-
413
-
414
-
415
- ### 2/17 解決
416
-
417
- ```ここに言語を入力
418
-
419
- import UIKit
420
-
421
-
422
-
423
- class ViewController: UIViewController {
424
-
425
-
426
-
427
- @IBOutlet weak var label: UILabel!
428
-
429
-
430
-
431
- override func viewDidLoad() {
432
-
433
- super.viewDidLoad()
434
-
435
- // Do any additional setup after loading the view, typically from a nib.
436
-
437
- }
438
-
439
-
440
-
441
- override func viewDidAppear(_ animated: Bool) {
442
-
443
- super.viewDidAppear(animated)
444
-
445
-
446
-
447
- if let _ = UserDefaults.standard.object(forKey: "text") as? String {
448
-
449
- label.text = (UserDefaults.standard.object(forKey: "text") as! String)
450
-
451
-
452
-
453
-
454
-
455
- }
456
-
457
-
458
-
459
- }
460
-
461
-
462
-
463
- }
464
-
465
- ```
466
-
467
-
468
-
469
- ```ここに言語を入力
470
-
471
- import UIKit
472
-
473
-
474
-
475
- class SecondViewController: UIViewController {
476
-
477
-
478
-
479
-
480
-
481
- @IBOutlet weak var textField: UITextField!
482
-
483
-
484
-
485
- override func viewDidLoad() {
486
-
487
- super.viewDidLoad()
488
-
489
-
490
-
491
- // textFieldの入力方法をナンバーパッドに設定
492
-
493
- textField.keyboardType = UIKeyboardType.numberPad
494
-
495
- }
496
-
497
-
498
-
499
-
500
-
501
- @IBAction func okButton(_ sender: Any) {
502
-
503
-
504
-
505
- UserDefaults.standard.set(textField.text, forKey: "text")
506
-
507
-
508
-
509
- }
510
-
511
-
512
-
513
- }
514
-
515
-
516
-
517
- ```
518
-
519
-
520
-
521
135
  ### 補足情報(FW/ツールのバージョンなど)
522
136
 
523
137
  Swift4 Xcode10