質問編集履歴

4

文字

2019/08/28 08:11

投稿

seiya_0930
seiya_0930

スコア17

test CHANGED
File without changes
test CHANGED
@@ -1,3 +1,9 @@
1
+ ```ここに言語を入力
2
+
3
+ コード
4
+
5
+ ```
6
+
1
7
  ヘルスケアアプリを作成しています。
2
8
 
3
9
 
@@ -60,7 +66,9 @@
60
66
 
61
67
  }
62
68
 
69
+ }
70
+
63
- }```
71
+ ```
64
72
 
65
73
  ```swift
66
74
 

3

文字の修正

2019/08/28 08:11

投稿

seiya_0930
seiya_0930

スコア17

test CHANGED
File without changes
test CHANGED
@@ -334,6 +334,8 @@
334
334
 
335
335
  ```
336
336
 
337
+
338
+
337
339
  ```swift
338
340
 
339
341
  import UIKit

2

コードを加えました

2019/08/28 08:09

投稿

seiya_0930
seiya_0930

スコア17

test CHANGED
File without changes
test CHANGED
@@ -16,9 +16,381 @@
16
16
 
17
17
  現在のコードはこのような感じです。
18
18
 
19
-
19
+ ```swift
20
+
20
-
21
+ import UIKit
22
+
23
+
24
+
25
+
26
+
21
-
27
+ // クイズ1つの問題がどんな値を扱うかうか
28
+
29
+ //情報が更新されることはないので、構造体にする
30
+
31
+ struct Quiz {
32
+
33
+
34
+
35
+ let text: String
36
+
37
+ let optionOne: String
38
+
39
+ let optionTwo: String
40
+
41
+
42
+
43
+ let optionThree: String
44
+
45
+
46
+
47
+ // Initializer(イニシャライザ) = 初期化処理
48
+
49
+ init(text: String, optionOne: String, optionTwo: String, optionThree: String) {
50
+
51
+ self.text = text
52
+
53
+ self.optionOne = optionOne
54
+
55
+ self.optionTwo = optionTwo
56
+
57
+ self.optionThree = optionThree
58
+
59
+
60
+
61
+ }
62
+
63
+ }```
64
+
65
+ ```swift
66
+
67
+ import UIKit
68
+
69
+
70
+
71
+ class nextViewController: UIViewController {
72
+
73
+
74
+
75
+ // MARK: - IBOutlet
76
+
77
+
78
+
79
+ @IBOutlet var quizNumberLabel: UILabel!
80
+
81
+ @IBOutlet var quizTextView: UITextView!
82
+
83
+ @IBOutlet var optionOneButton: UIButton!
84
+
85
+ @IBOutlet var optionTwoButton: UIButton!
86
+
87
+ @IBOutlet var optionThreeButton: UIButton!
88
+
89
+
90
+
91
+ // MARK: - Properties
92
+
93
+
94
+
95
+ var point: Int = 0
96
+
97
+ var quizNumber: Int = 0
98
+
99
+ var quizArray: [Quiz] = []
100
+
101
+
102
+
103
+ // MARK: - Lifecycle
104
+
105
+
106
+
107
+ override func viewDidLoad() {
108
+
109
+ super.viewDidLoad()
110
+
111
+
112
+
113
+ setUpQuiz()
114
+
115
+ showQuiz()
116
+
117
+ }
118
+
119
+
120
+
121
+ // MARK: - UI
122
+
123
+
124
+
125
+ func setUpQuiz() {
126
+
127
+
128
+
129
+ let quiz1 = Quiz(text: "毎日3食食べましたか?", optionOne:"はい", optionTwo:"時々食べた", optionThree: "食べていない")
130
+
131
+ let quiz2 = Quiz(text: "決まった時間にご飯を食べていますか?", optionOne: "食べている", optionTwo: "時々食べる", optionThree: "食べていない")
132
+
133
+ let quiz3 = Quiz(text: "果物を1日1回は食べていますか?", optionOne: "はい", optionTwo: "時々食べる", optionThree: "食べていない")
134
+
135
+ let quiz4 = Quiz(text: "野菜を十分に食べていますか?", optionOne: "食べている", optionTwo: "日による", optionThree: "食べていない")
136
+
137
+ let quiz5 = Quiz(text: "インスタンス食品は食べましたか?", optionOne: "食べていない", optionTwo: "時々食べた", optionThree: "よく食べた")
138
+
139
+ let quiz6 = Quiz(text: "タバコを吸いましたか?", optionOne: "吸わない", optionTwo: "たまに吸う", optionThree: "たくさん吸う")
140
+
141
+ let quiz7 = Quiz(text: "お酒を飲みましたか?", optionOne: "飲まない", optionTwo: "たまに飲んだ", optionThree: "飲まない")
142
+
143
+ let quiz8 = Quiz(text: "運動して体を動かしましたか?", optionOne: "動かした", optionTwo: "たまに動かした", optionThree: "動かしていない")
144
+
145
+ let quiz9 = Quiz(text: "翌日まで疲れが残ることがありますか?", optionOne: "特にない", optionTwo: "時々ある", optionThree: "よくある")
146
+
147
+ let quiz10 = Quiz(text: "食欲がない時がありますか?", optionOne: "特にない", optionTwo: "時々ある", optionThree: "よくある")
148
+
149
+ let quiz11 = Quiz(text: "原因不明の下痢などが起こりますか?", optionOne: "特にない", optionTwo: "時々ある", optionThree: "よくある")
150
+
151
+ let quiz12 = Quiz(text: "朝スッキリ起きられない時がありますか?", optionOne: "特にない", optionTwo: "時々ある", optionThree: "よくある")
152
+
153
+ let quiz13 = Quiz(text: "中々寝付けないことがありますか?", optionOne: "特にない", optionTwo: "時々ある", optionThree: "よくある")
154
+
155
+ let quiz14 = Quiz(text: "何事にもやる気が起きにくいですか?", optionOne: "特にない", optionTwo: "時々ある", optionThree: "よくある")
156
+
157
+ let quiz15 = Quiz(text:"色々なことに関心が薄くなりますか?", optionOne: "特にない", optionTwo: "時々ある",optionThree: "よくある")
158
+
159
+ let quiz16 = Quiz(text: "体調を崩しやすいですか?", optionOne: "特にない", optionTwo: "時期による", optionThree: "よく崩す")
160
+
161
+ let quiz17 = Quiz(text: "未来について妙に焦ることがありますか?", optionOne: "特にない", optionTwo: "時々ある", optionThree: "よくある")
162
+
163
+ let quiz18 = Quiz(text: "些細なことで腹が立つことがありますか?", optionOne: "特にない", optionTwo: "時々ある", optionThree: "よくある")
164
+
165
+ let quiz19 = Quiz(text: "肌荒れの症状が出ることがありますか?", optionOne: "特にない", optionTwo: "少し荒れる", optionThree: "よく荒れる")
166
+
167
+ let quiz20 = Quiz(text: "睡眠は十分に取れていますか?", optionOne: "取れている", optionTwo: "日による", optionThree: "取れていない")
168
+
169
+
170
+
171
+ quizArray.append(quiz1)
172
+
173
+ quizArray.append(quiz2)
174
+
175
+ quizArray.append(quiz3)
176
+
177
+ quizArray.append(quiz4)
178
+
179
+ quizArray.append(quiz5)
180
+
181
+ quizArray.append(quiz6)
182
+
183
+ quizArray.append(quiz7)
184
+
185
+ quizArray.append(quiz8)
186
+
187
+ quizArray.append(quiz9)
188
+
189
+ quizArray.append(quiz10)
190
+
191
+ quizArray.append(quiz11)
192
+
193
+ quizArray.append(quiz12)
194
+
195
+ quizArray.append(quiz13)
196
+
197
+ quizArray.append(quiz14)
198
+
199
+ quizArray.append(quiz15)
200
+
201
+ quizArray.append(quiz16)
202
+
203
+ quizArray.append(quiz17)
204
+
205
+ quizArray.append(quiz18)
206
+
207
+ quizArray.append(quiz19)
208
+
209
+ quizArray.append(quiz20)
210
+
211
+
212
+
213
+ }
214
+
215
+
216
+
217
+ func showQuiz() {
218
+
219
+ //クイズ番号、クイズ、各選択肢の表示
220
+
221
+ quizNumberLabel.text = String(quizNumber + 1) + "問目"
222
+
223
+ quizTextView.text = quizArray[quizNumber].text
224
+
225
+
226
+
227
+ UIView.setAnimationsEnabled(false)
228
+
229
+ optionOneButton.setTitle(quizArray[quizNumber].optionOne , for:.normal )
230
+
231
+ optionOneButton.layoutIfNeeded()
232
+
233
+ optionTwoButton.setTitle(quizArray[quizNumber].optionTwo, for: .normal)
234
+
235
+ optionTwoButton.layoutIfNeeded()
236
+
237
+ optionThreeButton.setTitle(quizArray[quizNumber].optionThree, for: .normal)
238
+
239
+ optionThreeButton.layoutIfNeeded()
240
+
241
+ UIView.setAnimationsEnabled(true)
242
+
243
+ }
244
+
245
+
246
+
247
+ func resetQuiz() {
248
+
249
+ point = 0
250
+
251
+ quizNumber = 0
252
+
253
+ showQuiz()
254
+
255
+ }
256
+
257
+
258
+
259
+
260
+
261
+ func updataQuiz() {
262
+
263
+ if quizNumber >= 19 {
264
+
265
+ // 全て完了時の処理 画面遷移するみたいなのでここは消してください
266
+
267
+ performSegue(withIdentifier: "toSecond", sender: nil)
268
+
269
+ //self.performSegue(withIdentifier: "toSecond", sender: nil)
270
+
271
+ } else {
272
+
273
+ quizNumber = quizNumber + 1
274
+
275
+ showQuiz()
276
+
277
+ }
278
+
279
+ }
280
+
281
+ override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
282
+
283
+ if segue.identifier == "toSecond" {
284
+
285
+ let resultVC = segue.destination as! resultViewController
286
+
287
+ resultVC.result = "あなたの健康率は(point)%です"
288
+
289
+ }
290
+
291
+ }
292
+
293
+ // MARK: - IBAction
294
+
295
+
296
+
297
+ @IBAction func pushOptionOneButton() {
298
+
299
+ // Option1 のボタンを押したのでPointに5%加算
300
+
301
+ point += 5
302
+
303
+ updataQuiz()
304
+
305
+
306
+
307
+ }
308
+
309
+
310
+
311
+ @IBAction func pushOptionTwoButton() {
312
+
313
+ // Option2 のボタンを押したのでPointに3%加算
314
+
315
+ point += 3
316
+
317
+ updataQuiz()
318
+
319
+ }
320
+
321
+
322
+
323
+ @IBAction func pushOptionThreeButton() {
324
+
325
+ // Option3 のボタンを押したのでPointに1%加算
326
+
327
+ point += 1
328
+
329
+ updataQuiz()
330
+
331
+ }
332
+
333
+ }
334
+
335
+ ```
336
+
337
+ ```swift
338
+
339
+ import UIKit
340
+
341
+
342
+
343
+ class resultViewController: UIViewController {
344
+
345
+
346
+
347
+ @IBOutlet var label:UILabel!
348
+
349
+
350
+
351
+ //ここにppointを渡す
352
+
353
+ var result :String = ""
354
+
355
+
356
+
357
+ override func viewDidLoad() {
358
+
359
+ super.viewDidLoad()
360
+
361
+
362
+
363
+ label.text = String(result)
364
+
365
+
366
+
367
+
368
+
369
+ // Do any additional setup after loading the view.
370
+
371
+ }
372
+
373
+
374
+
375
+ override func didReceiveMemoryWarning() {
376
+
377
+ super.didReceiveMemoryWarning()
378
+
379
+ // Dispose of any resources that can be recreated.
380
+
381
+ }
382
+
383
+
384
+
385
+
386
+
387
+
388
+
389
+
390
+
391
+ }
392
+
393
+ ```
22
394
 
23
395
  ![イメージ説明](96e4a154b61bacba05eef00d8298aa74.png)
24
396
 

1

画像を挿入し直しました

2019/08/28 08:08

投稿

seiya_0930
seiya_0930

スコア17

test CHANGED
File without changes
test CHANGED
@@ -1,4 +1,4 @@
1
- ![![イメージ説明](7118e08ca2e35080429c5db75fa19c60.png)](236f663fa672df8c2ed6706ee069b515.png)ヘルスケアアプリを作成しています。
1
+ ヘルスケアアプリを作成しています。
2
2
 
3
3
 
4
4
 
@@ -16,4 +16,14 @@
16
16
 
17
17
  現在のコードはこのような感じです。
18
18
 
19
- ![![![![イメージ](4d8e5317171041b3d28ec21961352914.png)](bed170850a86a91558dcd215a20f57b2.png)説明](7163381d4815b47f181655eb25db659f.png)説明](ac61ed538967b84d4c5ffd3e81c6e5a1.png)](841848fede348f2604f0dc6bfa535dca.png)
19
+
20
+
21
+
22
+
23
+ ![イメージ説明](96e4a154b61bacba05eef00d8298aa74.png)
24
+
25
+ ![イメージ説明](4a8420e07fbd7ab188051611591b9a62.png)
26
+
27
+ ![イメージ説明](b3f70108b4f8370701319aeab8bc08a5.png)
28
+
29
+ ![イメージ説明](83beebb72632023e698eb35a70e68335.png)