質問編集履歴

2

追記

2020/02/17 14:50

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -4,13 +4,13 @@
4
4
 
5
5
  Realmのデータベースをもとにした並び替え可能なTableViewを作成したいです
6
6
 
7
- RealmのデータベースはResults型で、並び替えに用いるremoveやinsertが使えないので、一度Arrayに変して、removeやinsertを用いて並び替えをし、for文を用いてRealmのデータベースを上書きしたいのですが、for文の中でArrayの中が変わってしまい、正しく上書きされません
7
+ RealmのデータベースはResults型で、並び替えに用いるremoveやinsertが使えないので、一度Arrayに変して、removeやinsertを用いて並び替えをし、for文を用いてRealmのデータベースを上書きしたいのですが、for文の中でArrayの中が変わってしまい、正しく上書きされません
8
8
 
9
9
 
10
10
 
11
11
  ### 発生している問題・エラーメッセージ
12
12
 
13
- 例えば、tab1, tab2, tab3, tab4という4つのセルがあり、tab1をtab4のところに持っていくと、for文の中で配列の中が次のように変わっていってしまいます
13
+ 例えば、tab1, tab2, tab3, tab4という4つのセルがあり、tab1をtab4のところに持っていくと、for文の中で配列の中が次のように変わっていってしまいます
14
14
 
15
15
 
16
16
 
@@ -98,9 +98,11 @@
98
98
 
99
99
  for (i, tab) in tabArray.enumerated() {
100
100
 
101
-        print(tabArray) // tabArrayの内容が変わってしまう
101
+ print(tabArray) // tabArrayの中身が変わってしまう
102
102
 
103
+ // tabArrayの中身が変わってしまい、tab.nameの値が変わってしまう
104
+
103
- tabObjects[i].name = tab.name // ここコメントアウトすると変わらない
105
+ tabObjects[i].name = tab.name // Realmのデータベース更新
104
106
 
105
107
  }
106
108
 
@@ -116,7 +118,9 @@
116
118
 
117
119
 
118
120
 
121
+ tabObjects[i].name = tab.nameをコメントアウトすると、上記の現象は起こらず、tabArrayの中身は変わりません
122
+
119
- ここ問題に対してたことを記載してください。
123
+ tabArray自体は代入していないので、なぜ変わってまうのか分かりません
120
124
 
121
125
 
122
126
 
@@ -124,4 +128,4 @@
124
128
 
125
129
 
126
130
 
127
- ここによ詳細情報を記載ださ
131
+ 最近、Swiftの勉強を始めたばかりなので、至らない点があると思いますが、どうぞよろしくお願します

1

追記

2020/02/17 14:50

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -38,7 +38,7 @@
38
38
 
39
39
 
40
40
 
41
- 3周目 [1]->
41
+ 3周目 [0]tab2 -> tab3
42
42
 
43
43
  [0]name = tab3
44
44
 
@@ -49,6 +49,8 @@
49
49
  [3]name = tab2
50
50
 
51
51
 
52
+
53
+ 4周目 [1]tab3 -> tab4
52
54
 
53
55
  [0]name = tab3
54
56