質問するログイン新規登録

質問編集履歴

3

誤字を修正

2019/07/23 03:55

投稿

swifty
swifty

スコア38

title CHANGED
File without changes
body CHANGED
@@ -121,7 +121,7 @@
121
121
  Swift 5.0.1
122
122
  Xcode 10.2.1
123
123
 
124
- ### 情報の追加・修正依頼を受けの追記
124
+ ### 情報の追加・修正依頼を受けの追記
125
125
 
126
126
  RecordViewControllerのチャート生成部分の記述は以下のようになっております。
127
127
 

2

追記を追加

2019/07/23 03:55

投稿

swifty
swifty

スコア38

title CHANGED
File without changes
body CHANGED
@@ -119,4 +119,60 @@
119
119
 
120
120
  ### 補足情報(言語/FW/ツール等のバージョンなど)
121
121
  Swift 5.0.1
122
- Xcode 10.2.1
122
+ Xcode 10.2.1
123
+
124
+ ### 情報の追加・修正依頼を受け手の追記
125
+
126
+ RecordViewControllerのチャート生成部分の記述は以下のようになっております。
127
+
128
+ ```RecordViewController
129
+ //ChartViewを生成
130
+ let rect = CGRect.init(x:((self.view.bounds.width-self.view.bounds.width * 0.9)/2), y: 175, width: self.view.bounds.width * 0.9, height: 500)
131
+ let chartView = ChartView(frame: rect)
132
+
133
+ //表示
134
+ self.scrollView.addSubview(chartView)
135
+
136
+ //chartViewの位置を指定
137
+ scrollView.addSubview(chartView)
138
+ chartView.translatesAutoresizingMaskIntoConstraints = false
139
+ chartView.centerXAnchor.constraint(equalTo: scrollView.centerXAnchor).isActive = true
140
+ chartView.topAnchor.constraint(equalTo: dailyLabel.bottomAnchor, constant: 20).isActive = true
141
+ chartView.leadingAnchor.constraint(equalTo: scrollView.leadingAnchor, constant: 40).isActive = true
142
+ chartView.trailingAnchor.constraint(equalTo: scrollView.trailingAnchor, constant: 40).isActive = true
143
+
144
+ //Realmからチャート描画のためのデータを取得
145
+ ChartView.createData { recordDataArray in
146
+
147
+ ChartView.lastSevenRecords = recordDataArray
148
+
149
+ //期間中のスコア全て配列に格納
150
+ var scoreArray = [Int16]()
151
+ for recordData in recordDataArray {
152
+
153
+ scoreArray.append(recordData.score)
154
+
155
+ }
156
+
157
+ //期間中の最高スコアを取得
158
+ let maxScore = Int(scoreArray.max()!)
159
+
160
+ if maxScore == 0 {
161
+
162
+ ChartView.maxValue = 10 * 100
163
+
164
+ } else {
165
+
166
+ //最高スコアを10の倍数に切り上げたものをChartViewのmaxValueに代入
167
+ ChartView.maxValue = self.getTenTimesNumber(num: maxScore, base: 10) * 100 //この100はmaxValueの値をyAxisHeightより大きくするために必要なもの
168
+
169
+ }
170
+
171
+ let node = ChartView.createChart()
172
+ //取得したデータをチャート描画するために反映させアニメーション
173
+ chartView.updateShape(node: node)
174
+ chartView.contentMode = .scaleAspectFit
175
+ ChartView.playAnimations()
176
+
177
+ }
178
+ ```

1

微調整

2019/07/23 03:45

投稿

swifty
swifty

スコア38

title CHANGED
File without changes
body CHANGED
@@ -11,9 +11,9 @@
11
11
 
12
12
  ページは上の3ページで構成されており、ページ2でデータの変更&保存ができます。3ページ目はその保存されたデータを元にチャートを表示するようにしております。
13
13
 
14
- 初期表示が2ページ目になっており、**初めて2ページ目から3ページ目にいくとき**は2ページ目で変更や保存したデータが適切に表示されます。
14
+ 初期表示が2ページ目になっており、**初めて2ページ目から3ページ目にいくとき**は2ページ目で変更や保存したデータが適切にチャートで表示されます。
15
15
 
16
- ですがその後スワイプでページ2に戻ってから、データを更新してページ3にいくとその結果が反映されず、先ほど表示されたがそのまま表示されてしまいます。
16
+ ですがその後スワイプでページ2に戻ってから、データを更新してページ3にいくとその結果が反映されず、先ほど表示されたチャがそのまま表示されてしまいます。
17
17
 
18
18
  どのようにすれば毎回2ページ目から3ページ目に行くときは初めて2ページ目から3ページ目にいくときの挙動にできるでしょうか?
19
19