BSKeyboard Controlsを使用して、ユーザー名とパスワードのログインフィールドのキーボードの上に次/前の完了ボタンを配置しています。
私が達成したいことは次のとおりです。-フィールドの1つが空白の場合、完了ボタンは「完了」と表示されます-両方のフィールドに少なくとも1つの文字が含まれている場合、「ログイン」と表示されます。
テキストフィールドの内容をチェックする方法は複数あることを理解しています。hasTextisEqualToString!= nilなどです。しかし、ここで文字をチェックしようとしていると思います。
ifステートメントを配置するのに最適な場所と使用する場所を知る必要があります。
私の分野は
self.usernameField
self.passwordField
私のキーボードコントロールは次のように更新されます。
self.keyboardControls.doneTitle = NSLocalizedString(@"KeyboardControlsDone", @"test");
また
self.keyboardControls.doneTitle = NSLocalizedString(@"KeyboardControlsLogin", @"test");
更新された方法:
NSString *newText = [textField.text stringByReplacingCharactersInRange:range withString:string];
UITextField *otherTextField;
if (textField == self.passwordField)
{
otherTextField = self.usernameField;
}
else
{
otherTextField = self.passwordField;
}
if ([newText length] > 0 && [otherTextField.text length] > 0)
{
self.keyboardControls.doneTitle = NSLocalizedString(@"KeyboardControlsLogin",@"Button for Keyboard Controls on Login page");
} else {
self.keyboardControls.doneTitle = NSLocalizedString(@"KeyboardControlsDone", @"test");
}