質問編集履歴
3
変更
title
CHANGED
File without changes
|
body
CHANGED
@@ -90,4 +90,60 @@
|
|
90
90
|
}
|
91
91
|
}
|
92
92
|
|
93
|
+
|
94
|
+
```
|
95
|
+
|
96
|
+
前の画面
|
97
|
+
```Swift
|
98
|
+
var resultArray1 = [String]()
|
99
|
+
|
100
|
+
var dateArray1 = [String]()
|
101
|
+
|
102
|
+
var Array1: [[String]] = []
|
103
|
+
|
104
|
+
var date1 = Date()
|
105
|
+
|
106
|
+
|
107
|
+
...
|
108
|
+
...
|
109
|
+
@IBAction func save(_ sender: Any) {
|
110
|
+
|
111
|
+
//配列を取り出す
|
112
|
+
if (UserDefaults.standard.object(forKey: "save") != nil) {
|
113
|
+
Array1 = UserDefaults.standard.object(forKey: "save") as! [[String]]
|
114
|
+
|
115
|
+
}
|
116
|
+
|
117
|
+
//Array1の要素0(resultArray1の保存したもの)をresultArray1に入れる
|
118
|
+
self.resultArray1 = self.Array1[0]
|
119
|
+
// Array1の要素1(dateArray1の保存したもの)をdateArray1に入れる
|
120
|
+
self.dateArray1 = self.Array1[1]
|
121
|
+
|
122
|
+
|
123
|
+
//zikanを呼び出す
|
124
|
+
zikan()
|
125
|
+
//resultArrayに回数を追加
|
126
|
+
resultArray1.append(countLabel2.text!)
|
127
|
+
|
128
|
+
Array1 = [resultArray1, dateArray1]
|
129
|
+
|
130
|
+
UserDefaults.standard.set(Array1, forKey: "save")
|
131
|
+
|
132
|
+
print("Array1:", resultArray1.count)
|
133
|
+
|
134
|
+
|
135
|
+
}
|
136
|
+
|
137
|
+
|
138
|
+
func zikan() {
|
139
|
+
//日付のフォーマットを指定する
|
140
|
+
let format = DateFormatter()
|
141
|
+
format.dateFormat = DateFormatter.dateFormat(fromTemplate: "yMdkHm", options: 0, locale: Locale(identifier: "ja_JP"))
|
142
|
+
|
143
|
+
//日付をStringに変換する
|
144
|
+
let sDate = format.string(from: date1)
|
145
|
+
//日付をdateArrayに入れる
|
146
|
+
dateArray1.append(sDate)
|
147
|
+
}
|
148
|
+
|
93
149
|
```
|
2
変更
title
CHANGED
File without changes
|
body
CHANGED
@@ -1,6 +1,7 @@
|
|
1
1
|
ボタンを押したら記録とその時刻をtableViewに保存したいのですが、表示する時刻と回数が配列に入っている一つまえのものになってしまいます。
|
2
2
|
前の画面から値を受け取っているのですがそこの配列に入っている回数と時刻はprint(.description)で確認したところ正しかったので、問題はこのtableViewにあると思われます。(tableViewでuserdefaultから受け取った配列に新しい回数と時刻が入っていない)
|
3
3
|
何かアドバイスでも頂けたら幸いです。
|
4
|
+
追記1/13日 回答お待ちしています。
|
4
5
|
```Swift
|
5
6
|
var resultArray2 = [String]()
|
6
7
|
|
@@ -80,7 +81,8 @@
|
|
80
81
|
resultArray2.remove(at: indexPath.row)
|
81
82
|
dateArray2.remove(at: indexPath.row)
|
82
83
|
|
83
|
-
|
84
|
+
Array2 = [resultArray2, dateArray2]
|
85
|
+
|
84
86
|
UserDefaults.standard.set(Array2, forKey: "save")
|
85
87
|
|
86
88
|
tableView.reloadData()
|
1
変更
title
CHANGED
@@ -1,1 +1,1 @@
|
|
1
|
-
tableviewに表示されるべき時刻のずれ
|
1
|
+
tableviewに表示されるべき時刻のずれ
|
body
CHANGED
@@ -1,7 +1,6 @@
|
|
1
|
-
ボタンを押したら記録とその時刻をtableViewに保存したいのですが、表示する時刻
|
1
|
+
ボタンを押したら記録とその時刻をtableViewに保存したいのですが、表示する時刻と回数が配列に入っている一つまえのものになってしまいます。
|
2
|
-
前の画面から値を受け取っているのですがそこの配列に入っている回数と時刻は正しかったので、問題はこのtableViewにあると思われます。
|
2
|
+
前の画面から値を受け取っているのですがそこの配列に入っている回数と時刻はprint(.description)で確認したところ正しかったので、問題はこのtableViewにあると思われます。(tableViewでuserdefaultから受け取った配列に新しい回数と時刻が入っていない)
|
3
|
-
|
4
|
-
|
3
|
+
何かアドバイスでも頂けたら幸いです。
|
5
4
|
```Swift
|
6
5
|
var resultArray2 = [String]()
|
7
6
|
|