回答編集履歴
4
true!
answer
CHANGED
@@ -18,7 +18,7 @@
|
|
18
18
|
|
19
19
|
```swift
|
20
20
|
//enable/disableの制御だけ
|
21
|
-
saveButton.isEnabled = !(userName.text?.isEmpty ??
|
21
|
+
saveButton.isEnabled = !(userName.text?.isEmpty ?? true)
|
22
22
|
```
|
23
23
|
|
24
24
|
---
|
3
補足
answer
CHANGED
@@ -19,4 +19,10 @@
|
|
19
19
|
```swift
|
20
20
|
//enable/disableの制御だけ
|
21
21
|
saveButton.isEnabled = !(userName.text?.isEmpty ?? false)
|
22
|
-
```
|
22
|
+
```
|
23
|
+
|
24
|
+
---
|
25
|
+
|
26
|
+
##### 補足
|
27
|
+
|
28
|
+
`nil`と`""`(未入力)は別物なのでキチンと区別しましょう。
|
2
全面書き換え
answer
CHANGED
@@ -1,15 +1,16 @@
|
|
1
|
-
|
1
|
+
初期化時にタップ無効にしていないからタップ出来てしまう、ということではないですかね?
|
2
|
-
|
2
|
+
あと、addTargetが何度も呼ばれてしまうのもマズイです。
|
3
3
|
|
4
|
-
あと、何度もaddTargetしてしまうのでマズイですね。
|
5
|
-
|
6
4
|
こんな感じでどうでしょう?
|
7
5
|
|
8
6
|
#### 初期化時
|
9
7
|
|
10
8
|
```swift
|
9
|
+
//カラにする
|
11
10
|
userName.text = ""
|
11
|
+
//タップ無効
|
12
12
|
saveButton.isEnabled = false
|
13
|
+
//タップ処理を登録
|
13
14
|
saveButton.addTarget(self, action: #selector(save(_:)), for: .touchUpInside)
|
14
15
|
```
|
15
16
|
|
1
isEmpty + nil考慮
answer
CHANGED
@@ -17,5 +17,5 @@
|
|
17
17
|
|
18
18
|
```swift
|
19
19
|
//enable/disableの制御だけ
|
20
|
-
saveButton.isEnabled = userName.text.
|
20
|
+
saveButton.isEnabled = !(userName.text?.isEmpty ?? false)
|
21
21
|
```
|