عرض رقم الهاتف في تنسيق الولايات المتحدة في تطبيق iPhone
-
23-09-2019 - |
سؤال
في تطبيق iPhone لدي textfield
لقبول رقم الهاتف. أحتاج إلى عرض الرقم في تنسيق رقم الهاتف الأمريكي. هذا مثل (000) 000-0000. عادة مثل إدخال رقم هاتف الاتصال iPhone. كيف يمكنني أن أفعل هذا. أي فكرة سيكون موضع تقدير كبير.
لا يوجد حل صحيح
نصائح أخرى
لتنسيق تلقائي ، استخدمت AddTarget بالاشتراك مع بلدي phonenumberformatter الذي - التي آدم يرجى الرجوع. تم وصف التنفيذ هنا.
سوف تحصل على رقم الهاتف من تنسيق
http://the-lost-beauty.blogspot.com/2010/01/locale-sensitive-phone-number.html
لا تنس استخدام فئة PhonEnumberFormatter. هذا الفصل هو أيضا متاح في تلك المدونة
نظرًا لأن المستخدم يدخل رقم الهاتف يدويًا في حقل النص ، يمكنك استخدام طريقة uitextfielddelegate textField:shouldChangeCharactersInRange:replacementString:
لتغيير رقم الهاتف الذي تم إدخاله ديناميكيًا عن طريق إضافة "(" قبل الرقم الأول ") بعد إدخال 3 أرقام"-بعد 6 أرقام. (أو) بعد الانتهاء من إدخال الأرقام ، يمكنك تغيير التنسيق المعروض مثل هذا:
- (BOOL) textFieldShouldReturn:(UITextField *)textField {
//resign the keypad and check if 10 numeric digits entered...
NSRange range;
range.length = 3;
range.location = 3;
textField.text = [NSString stringWithFormat:@"(%@)%@-%@", [textField.text substringToIndex:3], [textField.text substringWithRange:range], [textField.text substringFromIndex:6];
}
- (BOOL) textFieldShouldReturn:(UITextField *)textField {
//resign the keypad and check if 10 numeric digits entered...
NSRange range;
range.length = 3;
range.location = 3;
textField.text = [NSString stringWithFormat:@"(%@) %@-%@", [textField.text substringToIndex:3], [textField.text substringWithRange:range], [textField.text substringFromIndex:6];
}