質問編集履歴
2
不要な画像の削除
test
CHANGED
File without changes
|
test
CHANGED
@@ -126,20 +126,6 @@
|
|
126
126
|
|
127
127
|
|
128
128
|
|
129
|
-
EditViewControllerのClassとStoryboardID
|
130
|
-
|
131
|
-
|
132
|
-
|
133
|
-
![イメージ説明](2d8a32092cda649212d413ea1156929c.png)
|
134
|
-
|
135
|
-
|
136
|
-
|
137
|
-
Segueのidentifier
|
138
|
-
|
139
|
-
|
140
|
-
|
141
|
-
![イメージ説明](27e0375683002b2c413451cea3f5b552.png)
|
142
|
-
|
143
129
|
|
144
130
|
|
145
131
|
修正したViewController.swift
|
1
変更後のコードと画像の追加
test
CHANGED
File without changes
|
test
CHANGED
@@ -78,7 +78,7 @@
|
|
78
78
|
|
79
79
|
let editVC = segue.destination as! EditViewController
|
80
80
|
|
81
|
-
editVC.editContentLabel.text = displayedContentList[
|
81
|
+
editVC.editContentLabel.text = displayedContentList[indexPath.row]
|
82
82
|
|
83
83
|
|
84
84
|
|
@@ -88,7 +88,7 @@
|
|
88
88
|
|
89
89
|
|
90
90
|
|
91
|
-
その結果、下記の
|
91
|
+
その結果、下記のエラーメッセージが表示されました。
|
92
92
|
|
93
93
|
|
94
94
|
|
@@ -96,11 +96,9 @@
|
|
96
96
|
|
97
97
|
Thread 1: Fatal error: Unexpectedly found nil while implicitly unwrapping an Optional value
|
98
98
|
|
99
|
+
```
|
99
100
|
|
100
101
|
|
101
|
-
Instance member 'row' cannot be used on type 'IndexPath'
|
102
|
-
|
103
|
-
```
|
104
102
|
|
105
103
|
|
106
104
|
|
@@ -108,8 +106,86 @@
|
|
108
106
|
|
109
107
|
|
110
108
|
|
111
|
-
`
|
109
|
+
`indexPath`はTableViewの要素?なので、`prepare(for segue)`メソッドの中で使えないのではないかと考えましたが、他のやり方が思いつきません。すでに他の画面遷移を実装している状態で、`didSelectRowAt`から画面遷移ができるようにする良い方法はあるでしょうか?
|
112
110
|
|
113
111
|
|
114
112
|
|
115
113
|
ご教授願います。
|
114
|
+
|
115
|
+
|
116
|
+
|
117
|
+
**追記**
|
118
|
+
|
119
|
+
|
120
|
+
|
121
|
+
Main.storyboardの画面遷移図です。今回繋げたいのは、左上のViewControllerと左下のEditViewControllerです。
|
122
|
+
|
123
|
+
|
124
|
+
|
125
|
+
![](663ebf0b8a6607b55781822e08cc9ad2.png)
|
126
|
+
|
127
|
+
|
128
|
+
|
129
|
+
EditViewControllerのClassとStoryboardID
|
130
|
+
|
131
|
+
|
132
|
+
|
133
|
+
![イメージ説明](2d8a32092cda649212d413ea1156929c.png)
|
134
|
+
|
135
|
+
|
136
|
+
|
137
|
+
Segueのidentifier
|
138
|
+
|
139
|
+
|
140
|
+
|
141
|
+
![イメージ説明](27e0375683002b2c413451cea3f5b552.png)
|
142
|
+
|
143
|
+
|
144
|
+
|
145
|
+
修正したViewController.swift
|
146
|
+
|
147
|
+
|
148
|
+
|
149
|
+
```Swift
|
150
|
+
|
151
|
+
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
|
152
|
+
|
153
|
+
|
154
|
+
|
155
|
+
guard let editVC = storyboard?.instantiateViewController(identifier: "EditViewController") as? EditViewController else { return }
|
156
|
+
|
157
|
+
editVC.editContentLabel.text = displayedContentList[indexPath.row]
|
158
|
+
|
159
|
+
self.performSegue(withIdentifier: "transEdit", sender: nil)
|
160
|
+
|
161
|
+
|
162
|
+
|
163
|
+
}
|
164
|
+
|
165
|
+
|
166
|
+
|
167
|
+
```
|
168
|
+
|
169
|
+
|
170
|
+
|
171
|
+
EditViewController.swift
|
172
|
+
|
173
|
+
|
174
|
+
|
175
|
+
```Swift
|
176
|
+
|
177
|
+
class EditViewController: UIViewController {
|
178
|
+
|
179
|
+
|
180
|
+
|
181
|
+
@IBOutlet weak var editContentLabel: UILabel!
|
182
|
+
|
183
|
+
|
184
|
+
|
185
|
+
override func viewDidLoad() {
|
186
|
+
|
187
|
+
super.viewDidLoad()
|
188
|
+
|
189
|
+
}
|
190
|
+
|
191
|
+
```
|