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

回答編集履歴

2

訂正

2020/04/22 11:24

投稿

退会済みユーザー
answer CHANGED
@@ -12,8 +12,10 @@
12
12
  func textField(_ textField: UITextField,
13
13
  shouldChangeCharactersIn range: NSRange,
14
14
  replacementString string: String) -> Bool {
15
+
15
-
16
+    // ここで比較するとだめなのよ。
17
+
16
- DispatchQueue.main.asyncAfter(deadline: .now() + 0.01) {
18
+    DispatchQueue.main.asyncAfter(deadline: .now() + 0.01) {
17
19
  // ここで比較して、isEnabledを更新すればできるかな?
18
20
  self.Button.isEnabled = self.newpass.text == self.newpass2.text
19
21
  }

1

訂正

2020/04/22 11:24

投稿

退会済みユーザー
answer CHANGED
@@ -1,9 +1,18 @@
1
1
  こんなかんじでできますか?
2
2
 
3
3
  ```swift
4
+
5
+ // 初期値をfalseにしておいて、
6
+ override func viewDidLoad() {
7
+ super.viewDidLoad()
8
+ Button.isEnabled = false
9
+ }
10
+
11
+ // 文字列に変化があったときに、条件式を評価して、isEnabledを設定
4
12
  func textField(_ textField: UITextField,
5
13
  shouldChangeCharactersIn range: NSRange,
6
14
  replacementString string: String) -> Bool {
15
+
7
16
  DispatchQueue.main.asyncAfter(deadline: .now() + 0.01) {
8
17
  // ここで比較して、isEnabledを更新すればできるかな?
9
18
  self.Button.isEnabled = self.newpass.text == self.newpass2.text