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

質問編集履歴

3

記入先を変更しました

2020/04/13 14:47

投稿

Eijirou
Eijirou

スコア6

title CHANGED
File without changes
body CHANGED
@@ -1,7 +1,4 @@
1
- ``````ここに言語を入力
2
- コード
3
- ```
4
- import UIKit
1
+ ```import UIKit
5
2
 
6
3
  class SettingsViewController: UIViewController, UIImagePickerControllerDelegate, UINavigationControllerDelegate, UITextFieldDelegate {
7
4
 
@@ -213,6 +210,9 @@
213
210
 
214
211
  }
215
212
 
213
+ コード
214
+ ```
215
+
216
216
  ```設定画面でtextFieldの値をTextLabelに表示して保存するコードを書いてます。
217
217
 
218
218
  全くの初心者でこのエラーがどこから来てるのか分かりません。

2

記入先を変更しました

2020/04/13 14:47

投稿

Eijirou
Eijirou

スコア6

title CHANGED
File without changes
body CHANGED
@@ -1,5 +1,220 @@
1
- 設定画面でtextFieldの値をTextLabel表示して保存するコード書いてます。
1
+ ``````ここ言語入力
2
+ コード
3
+ ```
4
+ import UIKit
2
5
 
6
+ class SettingsViewController: UIViewController, UIImagePickerControllerDelegate, UINavigationControllerDelegate, UITextFieldDelegate {
7
+
8
+
9
+ @IBOutlet weak var usericonView: UIImageView!
10
+
11
+ @IBOutlet weak var nickNameTextField: UITextField!
12
+
13
+ @IBOutlet weak var userNameTextField: UITextField!
14
+
15
+ @IBOutlet weak var sendEmailTextField: UITextField!
16
+
17
+ @IBOutlet weak var sendPhoneNumber: UITextField!
18
+
19
+ @IBOutlet weak var nextSendEmailTextField: UITextField!
20
+
21
+ @IBOutlet weak var nextSendPhoneNumber: UITextField!
22
+
23
+
24
+
25
+ @IBOutlet weak var nickNameLabel: UILabel!
26
+
27
+ @IBOutlet weak var userNameLabel: UILabel!
28
+
29
+ @IBOutlet weak var sendEmailLabel: UILabel!
30
+
31
+ @IBOutlet weak var sendPhoneLabel: UILabel!
32
+
33
+ @IBOutlet weak var nextSendEmailLabel: UILabel!
34
+
35
+ @IBOutlet weak var nextSendPhoneLabel: UILabel!
36
+
37
+
38
+ var nickNameText:String = "ニックネームを入力"
39
+ var userNameText:String = "名前を入力"
40
+ var sendEmailText:String = "送り先Emailを入力"
41
+ var sendPhone:String = "電話番号を入力"
42
+ var nextSendEmailText:String = "送り先Email-2を入力"
43
+ var nextSendPhone:String = "電話番号-2を入力"
44
+
45
+
46
+ let userDefaults = UserDefaults.standard
47
+
48
+
49
+
50
+ override func viewDidLoad() {
51
+ super.viewDidLoad()
52
+
53
+
54
+ nickNameTextField.delegate = self
55
+ userNameTextField.delegate = self
56
+ sendEmailTextField.delegate = self
57
+ sendPhoneNumber.delegate = self
58
+ nextSendEmailTextField.delegate = self
59
+ nextSendPhoneNumber.delegate = self
60
+
61
+ userDefaults.register(defaults: ["NickName": "ニックネームを入力"])
62
+ nickNameLabel.text = readData()
63
+
64
+ userDefaults.register(defaults: ["UserName": "名前を入力"])
65
+ userNameLabel.text = readData()
66
+
67
+ userDefaults.register(defaults: ["SendEmail": "Emailを入力"])
68
+ sendEmailLabel.text = readData()
69
+
70
+ userDefaults.register(defaults: ["SendPhone": "電話番号を入力"])
71
+ sendPhoneLabel.text = readData()
72
+
73
+ userDefaults.register(defaults: ["NextSendEmail": "Emailを入力"])
74
+ nextSendEmailLabel.text = readData()
75
+
76
+ userDefaults.register(defaults: ["NextSendPhone": "電話番号を入力"])
77
+ nextSendPhoneLabel.text = readData()
78
+
79
+ }
80
+
81
+ //アルバムの写真を選択してアイコンとして表示する。
82
+ @IBAction func toAlbumButton(_ sender: Any) {
83
+
84
+ let picker = UIImagePickerController()
85
+ picker.sourceType = .photoLibrary
86
+ picker.delegate = self
87
+ present(picker, animated: true)
88
+ self.present(picker, animated: true, completion: nil)
89
+
90
+ }
91
+
92
+ func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [UIImagePickerController.InfoKey : Any]) {
93
+ if let selectedImage = info[.originalImage] as? UIImage{
94
+ usericonView.image = selectedImage
95
+ }
96
+ self.dismiss(animated: true)
97
+ }
98
+
99
+ func imagePickerControllerDidCancel(_ picker: UIImagePickerController) {
100
+ self.dismiss(animated: true, completion: nil)
101
+ }
102
+
103
+ //テキスト入力設定
104
+
105
+ func textFieldShouldReturn(_ textField: UITextField) -> Bool{
106
+ nickNameText = textField.text!
107
+ nickNameLabel.text = nickNameText
108
+
109
+ userNameText = textField.text!
110
+ userNameLabel.text = userNameText
111
+
112
+ sendEmailText = textField.text!
113
+ sendEmailLabel.text = sendEmailText
114
+
115
+ sendPhone = textField.text!
116
+ sendPhoneLabel.text = sendPhone
117
+
118
+ nextSendEmailText = textField.text!
119
+ nextSendEmailLabel.text = nextSendEmailText
120
+
121
+ nextSendPhone = textField.text!
122
+ nextSendPhoneLabel.text = nextSendPhone
123
+
124
+
125
+ textField.resignFirstResponder()
126
+
127
+ saveData(str: nickNameText)
128
+ saveData(str: userNameText)
129
+ saveData(str: sendEmailText)
130
+ saveData(str: sendPhone)
131
+ saveData(str: nextSendEmailText)
132
+ saveData(str: nextSendPhone)
133
+
134
+ return true
135
+
136
+ }
137
+
138
+ func saveData(str: String){
139
+ userDefaults.set(str, forKey: "NickName")
140
+ userDefaults.set(str, forKey: "UserName")
141
+ userDefaults.set(str, forKey: "SendEmail")
142
+ userDefaults.set(str, forKey: "SendPhone")
143
+ userDefaults.set(str, forKey: "NextSendEmail")
144
+ userDefaults.set(str, forKey: "NextSendPhone")
145
+ }
146
+
147
+ func readData() -> String {
148
+ let str: String = userDefaults.object(forKey: "NickName") as! String
149
+
150
+ let _: String = userDefaults.object(forKey: "UserName") as! String
151
+
152
+ let _: String = userDefaults.object(forKey: "SendEmail") as! String
153
+
154
+ let _: String = userDefaults.object(forKey: "SendPhone") as! String
155
+
156
+ let _: String = userDefaults.object(forKey: "NextSendEmail") as! String
157
+
158
+ let _: String = userDefaults.object(forKey: "NextSendPhone") as! String
159
+
160
+ return str
161
+
162
+ }
163
+
164
+
165
+ @IBAction func hozonButtton(_ sender : AnyObject) {
166
+
167
+ // Key の値を削除
168
+ userDefaults.removeObject(forKey: "NickName")
169
+ userDefaults.removeObject(forKey: "UserName")
170
+ userDefaults.removeObject(forKey: "SendEmail")
171
+ userDefaults.removeObject(forKey: "SendPhone")
172
+ userDefaults.removeObject(forKey: "NextsendEmail")
173
+ userDefaults.removeObject(forKey: "NextSendPhone")
174
+
175
+
176
+
177
+ userDefaults.set(true, forKey: "NickName")
178
+ let str: String = userDefaults.object(forKey: "NickName") as! String
179
+ nickNameLabel.text = str
180
+
181
+ userDefaults.set(true, forKey: "UserName")
182
+ let _: String = userDefaults.object(forKey: "UserName") as! String
183
+ nickNameLabel.text = str
184
+
185
+ userDefaults.set(true, forKey: "SendEmail")
186
+ let _: String = userDefaults.object(forKey: "SendEmail") as! String
187
+ nickNameLabel.text = str
188
+
189
+ userDefaults.set(true, forKey: "SendPhone")
190
+ let _: String = userDefaults.object(forKey: "SendPhone") as! String
191
+ nickNameLabel.text = str
192
+
193
+ userDefaults.set(true, forKey: "NextSendemail")
194
+ let _: String = userDefaults.object(forKey: "NextSendEmail") as! String
195
+ nickNameLabel.text = str
196
+
197
+ userDefaults.set(true, forKey: "NextSendPhone")
198
+ let _: String = userDefaults.object(forKey: "NextSendPhone") as! String
199
+ nickNameLabel.text = str
200
+
201
+ nickNameLabel.text = str
202
+ userNameLabel.text = str
203
+ sendEmailLabel.text = str
204
+ sendPhoneLabel.text = str
205
+ nextSendEmailLabel.text = str
206
+ nextSendPhoneLabel.text = str
207
+
208
+
209
+ print()
210
+
211
+ }
212
+
213
+
214
+ }
215
+
216
+ ```設定画面でtextFieldの値をTextLabelに表示して保存するコードを書いてます。
217
+
3
218
  全くの初心者でこのエラーがどこから来てるのか分かりません。
4
219
 
5
220
  ご指導いただければ存じます。

1

リスト表示を追加

2020/04/13 14:46

投稿

Eijirou
Eijirou

スコア6

title CHANGED
File without changes
body CHANGED
@@ -16,219 +16,8 @@
16
16
 
17
17
  ### 該当のソースコード
18
18
 
19
- import UIKit
20
19
 
21
- class SettingsViewController: UIViewController, UIImagePickerControllerDelegate, UINavigationControllerDelegate, UITextFieldDelegate {
22
-
23
-
24
- @IBOutlet weak var usericonView: UIImageView!
25
-
26
- @IBOutlet weak var nickNameTextField: UITextField!
27
-
28
- @IBOutlet weak var userNameTextField: UITextField!
29
-
30
- @IBOutlet weak var sendEmailTextField: UITextField!
31
-
32
- @IBOutlet weak var sendPhoneNumber: UITextField!
33
-
34
- @IBOutlet weak var nextSendEmailTextField: UITextField!
35
-
36
- @IBOutlet weak var nextSendPhoneNumber: UITextField!
37
-
38
-
39
-
40
- @IBOutlet weak var nickNameLabel: UILabel!
41
-
42
- @IBOutlet weak var userNameLabel: UILabel!
43
-
44
- @IBOutlet weak var sendEmailLabel: UILabel!
45
-
46
- @IBOutlet weak var sendPhoneLabel: UILabel!
47
-
48
- @IBOutlet weak var nextSendEmailLabel: UILabel!
49
-
50
- @IBOutlet weak var nextSendPhoneLabel: UILabel!
51
-
52
-
53
- var nickNameText:String = "ニックネームを入力"
54
- var userNameText:String = "名前を入力"
55
- var sendEmailText:String = "送り先Emailを入力"
56
- var sendPhone:String = "電話番号を入力"
57
- var nextSendEmailText:String = "送り先Email-2を入力"
58
- var nextSendPhone:String = "電話番号-2を入力"
59
-
60
-
61
- let userDefaults = UserDefaults.standard
62
-
63
-
64
-
65
- override func viewDidLoad() {
66
- super.viewDidLoad()
67
-
68
-
69
- nickNameTextField.delegate = self
70
- userNameTextField.delegate = self
71
- sendEmailTextField.delegate = self
72
- sendPhoneNumber.delegate = self
73
- nextSendEmailTextField.delegate = self
74
- nextSendPhoneNumber.delegate = self
75
-
76
- userDefaults.register(defaults: ["NickName": "ニックネームを入力"])
77
- nickNameLabel.text = readData()
78
-
79
- userDefaults.register(defaults: ["UserName": "名前を入力"])
80
- userNameLabel.text = readData()
81
-
82
- userDefaults.register(defaults: ["SendEmail": "Emailを入力"])
83
- sendEmailLabel.text = readData()
84
-
85
- userDefaults.register(defaults: ["SendPhone": "電話番号を入力"])
86
- sendPhoneLabel.text = readData()
87
-
88
- userDefaults.register(defaults: ["NextSendEmail": "Emailを入力"])
89
- nextSendEmailLabel.text = readData()
90
-
91
- userDefaults.register(defaults: ["NextSendPhone": "電話番号を入力"])
92
- nextSendPhoneLabel.text = readData()
93
-
94
- }
95
-
96
- //アルバムの写真を選択してアイコンとして表示する。
97
- @IBAction func toAlbumButton(_ sender: Any) {
98
-
99
- let picker = UIImagePickerController()
100
- picker.sourceType = .photoLibrary
101
- picker.delegate = self
102
- present(picker, animated: true)
103
- self.present(picker, animated: true, completion: nil)
104
-
105
- }
106
-
107
- func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [UIImagePickerController.InfoKey : Any]) {
108
- if let selectedImage = info[.originalImage] as? UIImage{
109
- usericonView.image = selectedImage
110
- }
111
- self.dismiss(animated: true)
112
- }
113
-
114
- func imagePickerControllerDidCancel(_ picker: UIImagePickerController) {
115
- self.dismiss(animated: true, completion: nil)
116
- }
117
-
118
- //テキスト入力設定
119
-
120
- func textFieldShouldReturn(_ textField: UITextField) -> Bool{
121
- nickNameText = textField.text!
122
- nickNameLabel.text = nickNameText
123
-
124
- userNameText = textField.text!
125
- userNameLabel.text = userNameText
126
-
127
- sendEmailText = textField.text!
128
- sendEmailLabel.text = sendEmailText
129
-
130
- sendPhone = textField.text!
131
- sendPhoneLabel.text = sendPhone
132
-
133
- nextSendEmailText = textField.text!
134
- nextSendEmailLabel.text = nextSendEmailText
135
-
136
- nextSendPhone = textField.text!
137
- nextSendPhoneLabel.text = nextSendPhone
138
-
139
-
140
- textField.resignFirstResponder()
141
-
142
- saveData(str: nickNameText)
143
- saveData(str: userNameText)
144
- saveData(str: sendEmailText)
145
- saveData(str: sendPhone)
146
- saveData(str: nextSendEmailText)
147
- saveData(str: nextSendPhone)
148
-
149
- return true
150
-
151
- }
152
-
153
- func saveData(str: String){
154
- userDefaults.set(str, forKey: "NickName")
155
- userDefaults.set(str, forKey: "UserName")
156
- userDefaults.set(str, forKey: "SendEmail")
157
- userDefaults.set(str, forKey: "SendPhone")
158
- userDefaults.set(str, forKey: "NextSendEmail")
159
- userDefaults.set(str, forKey: "NextSendPhone")
160
- }
161
-
162
- func readData() -> String {
163
- let str: String = userDefaults.object(forKey: "NickName") as! String
164
-
165
- let _: String = userDefaults.object(forKey: "UserName") as! String
166
-
167
- let _: String = userDefaults.object(forKey: "SendEmail") as! String
168
-
169
- let _: String = userDefaults.object(forKey: "SendPhone") as! String
170
-
171
- let _: String = userDefaults.object(forKey: "NextSendEmail") as! String
172
-
173
- let _: String = userDefaults.object(forKey: "NextSendPhone") as! String
174
-
175
- return str
176
-
177
- }
178
-
179
-
180
- @IBAction func hozonButtton(_ sender : AnyObject) {
181
-
182
- // Key の値を削除
183
- userDefaults.removeObject(forKey: "NickName")
184
- userDefaults.removeObject(forKey: "UserName")
185
- userDefaults.removeObject(forKey: "SendEmail")
186
- userDefaults.removeObject(forKey: "SendPhone")
187
- userDefaults.removeObject(forKey: "NextsendEmail")
188
- userDefaults.removeObject(forKey: "NextSendPhone")
189
-
190
-
191
-
192
- userDefaults.set(true, forKey: "NickName")
193
- let str: String = userDefaults.object(forKey: "NickName") as! String
194
- nickNameLabel.text = str
195
-
196
- userDefaults.set(true, forKey: "UserName")
197
- let _: String = userDefaults.object(forKey: "UserName") as! String
198
- nickNameLabel.text = str
199
-
200
- userDefaults.set(true, forKey: "SendEmail")
201
- let _: String = userDefaults.object(forKey: "SendEmail") as! String
202
- nickNameLabel.text = str
203
-
204
- userDefaults.set(true, forKey: "SendPhone")
205
- let _: String = userDefaults.object(forKey: "SendPhone") as! String
206
- nickNameLabel.text = str
207
-
208
- userDefaults.set(true, forKey: "NextSendemail")
209
- let _: String = userDefaults.object(forKey: "NextSendEmail") as! String
210
- nickNameLabel.text = str
211
-
212
- userDefaults.set(true, forKey: "NextSendPhone")
213
- let _: String = userDefaults.object(forKey: "NextSendPhone") as! String
214
- nickNameLabel.text = str
215
-
216
- nickNameLabel.text = str
217
- userNameLabel.text = str
218
- sendEmailLabel.text = str
219
- sendPhoneLabel.text = str
220
- nextSendEmailLabel.text = str
221
- nextSendPhoneLabel.text = str
222
-
223
-
224
- print()
225
-
226
- }
227
-
228
20
 
229
- }
230
-
231
-
232
21
  ### 試したこと
233
22
 
234
23
  いくつかの関数を見直しました。