私は登録フォームを作成していますが、テキストフィールドのいずれかが空のままになっている場合は、それを検証したいと思います。しかし、テキストフィールドが空のときに通常の UIAlertView を表示したくありません。特定の textField の横に赤色の星印やその他のものを表示できますか?
emailId パターンを確認するために検証するにはどうすればよいですか?
私は登録フォームを作成していますが、テキストフィールドのいずれかが空のままになっている場合は、それを検証したいと思います。しかし、テキストフィールドが空のときに通常の UIAlertView を表示したくありません。特定の textField の横に赤色の星印やその他のものを表示できますか?
emailId パターンを確認するために検証するにはどうすればよいですか?
赤い色のテキストを設定できますtextField
if ([yourTextField.text isEqualToString:@""])
{
yourTextField.textColor=[UIColor redColor];
yourTextField.text=@"Value Required";
}
.h ファイルに textField のデリゲートを設定します
<UITextFieldDelegate>
textFieldDidBeginEditing
あなたのテキストフィールドの色を変更することができます
textField に * を設定している場合は、これを行います
- (void)textFieldDidBeginEditing:(UITextField *)textField
{
if ([textField.text isEqualToString:@"*"])
{
textField.text=@"";
textField.textColor=[UIColor blackColor];
}
}
または、自分の横にラベルを作成し、textField
最初は非表示にして、必要なときに表示することもできます。
メールの検証
- (BOOL)isValidEmailId:(NSString*)email
{
NSString *emailRegex = @"[A-Z0-9a-z._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,4}";
NSPredicate *emailTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", emailRegex];
return [emailTest evaluateWithObject:email];
}
電子メール フィールドの検証:
- (BOOL)EmailValidationL:(NSString *)email
{
NSString *emailRegEx =@"(?:[a-z0-9!#$%\\&'*+/=?\\^_`{|}~-]+(?:\\.[a-z0-9!#$%\\&'*+/=?\\^_`{|}"
@"~-]+)*|\"(?:[\\x01-\\x08\\x0b\\x0c\\x0e-\\x1f\\x21\\x23-\\x5b\\x5d-\\"
@"x7f]|\\\\[\\x01-\\x09\\x0b\\x0c\\x0e-\\x7f])*\")@(?:(?:[a-z0-9](?:[a-"
@"z0-9-]*[a-z0-9])?\\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?|\\[(?:(?:25[0-5"
@"]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-"
@"9][0-9]?|[a-z0-9-]*[a-z0-9]:(?:[\\x01-\\x08\\x0b\\x0c\\x0e-\\x1f\\x21"
@"-\\x5a\\x53-\\x7f]|\\\\[\\x01-\\x09\\x0b\\x0c\\x0e-\\x7f])+)\\])";
NSPredicate *regExPredicate = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", emailRegEx];
a= [regExPredicate evaluateWithObject:email];
return a;
}
そして、それを確認するには、以下のようにします:
if (![self EmailValidationL:emailtxt.text])
{
mailAlert =[[UIAlertView alloc]initWithTitle:@"Error"
message:@"Email Field Is Not Valid"
delegate:nil
cancelButtonTitle:nil
otherButtonTitles:@"OK",nil];
[mailAlert show];
[mailAlert release];
}
これを試すことができます:
まず、XIB で単純なテキストと色の単純なラベルを取得します。
-(void)DidLoad
{
-----
lbl.hidden = YES;
-----
}
Attributes:
text = "* email invalid"
color = "red"
Or whatever you like.
「textDidEndEditing」メソッド。
- (void)textFieldDidEndEditing:(UITextField *)textField
{
if(textField == txtEmail)
{
if(![txtEmail.text isEqualToString:@""])
{
bool chk = [self validateEmail:txtEmail.text];
if(!chk)
{
lbl.hidden = NO;
lbl.text = @"email invalid";
}
else
lbl.hidden = YES;
}
else
{
lbl.hidden = NO;
lbl.text = @"* required";
}
}
}
電子メールの検証
+(BOOL) validateEmail: (NSString *) email
{
NSString *emailRegex = @"[A-Z0-9a-z._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,4}";
NSPredicate *emailTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", emailRegex];
BOOL isValid = [emailTest evaluateWithObject:email];
return isValid;
}
はい、赤色の画像または * テキストを含むラベルを表示できます。
メールを検証するには、次のコードを使用できます
+(BOOL) validateEmail: (NSString *) email
{
NSString *emailRegex = @"[A-Z0-9a-z._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]";
NSPredicate *emailTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", emailRegex];
BOOL isValid = [emailTest evaluateWithObject:email];
return isValid;
}
わかりましたので、電子メールの多くのソリューションを入手できます。
スターに行きましょう。これには多くの方法があるかもしれませんが、そのうちの2つを挙げさせてください
開始を表示したい場所に非表示の UIImageView を追加し、空のままにすると表示されるようにします
[UIView addSubView:UIImageView] を使用して、表示したいときに開始を表示します。
通常の * を赤色で表示したい場合は、UIImageView の代わりに UILabel を使用できます。
以下を使用して電子メールを検証します。
NSString *emailRegex = @"[A-Z0-9a-z._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,4}";
NSPredicate *emailTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", emailRegex];
if(![emailTest evaluateWithObject:txtMail.text])
{
//Your code if wrong email
}
ではごきげんよう....
まず、Shashank Kulshrestha が電子メールの検証について素晴らしい回答をくれました。無効または空の入力を示すために何かを表示したい場合は、そのテキスト フィールドに従ってください。赤いエッジが表示されます。1.QuartzCore フレームワークを追加します。2.インポート #import 3.次のコードを追加:
if (textfield==empty || invalid)
{
textField.layer.cornerRadius=8.0f;
textField.layer.masksToBounds=YES;
textField.layer.borderColor=[[UIColor redColor]CGColor];
textField.layer.borderWidth= 1.0f;
}