【发布时间】:2014-10-28 15:42:10
【问题描述】:
我能够将 Stripe 与我的 iOS 代码完美集成。 PTKView 显示卡号、到期月/年、CVV 号。在 PTKView 中,我没有看到 ZIP Code 文本字段,但我可以看到 addressZip 属性。
是否可以使用 iOS Stripe 视图捕获邮政编码?
提前致谢。
【问题讨论】:
我能够将 Stripe 与我的 iOS 代码完美集成。 PTKView 显示卡号、到期月/年、CVV 号。在 PTKView 中,我没有看到 ZIP Code 文本字段,但我可以看到 addressZip 属性。
是否可以使用 iOS Stripe 视图捕获邮政编码?
提前致谢。
【问题讨论】:
看起来 PTKView 还没有开箱即用的地址 UI 组件。但是,它们会为您提供 PTKAddressZip 类型来验证输入的邮政编码是否有效。
我使用 PaymentKit 提供的“textField.png”图像创建了自己的 ZIP 字段,看起来与信用卡字段完全相同。
在这里,在 Objective C 和 Swift 示例中......
目标-C:
UITextField *zipTextField;
zipTextField = [[UITextField alloc] initWithFrame: CGRectMake(15,170,290,55)];
zipTextField.keyboardType = UIKeyboardTypeNumberPad;
zipTextField.placeholder = @"ZIP Code";
//Left padding
UIView *paddingView = [[UIView alloc ] initWithFrame:CGRectMake(0, 0, 5, 20)];
zipTextField.leftView = paddingView;
zipTextField.leftViewMode = UITextFieldViewModeAlways;
//Make it look like the CC box
UIImageView *backgroundImageView = [[UIImageView alloc] initWithFrame:zipTextField.bounds];
backgroundImageView.image = [[UIImage imageNamed: @"textField"] resizableImageWithCapInsets:UIEdgeInsetsMake(0, 8, 0, 8)];
[zipTextField addSubview:backgroundImageView];
//Add the ZIP field finally
[self.view addSubview:zipTextField];
//Validate the zip - Put this code in your Submit button
PTKAddressZip *zip = [[PTKAddressZip alloc] initWithString:zipTextField.text];
NSLog( zip.isValid ? @"ZIP is valid" : @"ZIP is invalid");
斯威夫特:
//Setup ZIP field
self.zipTextField = UITextField(frame: CGRectMake(15,170,290,45))
self.zipTextField.keyboardType = UIKeyboardType.NumberPad
self.zipTextField.placeholder = "ZIP Code"
//Left padding
var paddingView = UIView(frame:CGRectMake(0, 0, 5, 20))
self.zipTextField.leftView = paddingView
self.zipTextField.leftViewMode = UITextFieldViewMode.Always
//Make it look like the CC box
var backgroundImageView = UIImageView(frame:self.zipTextField.bounds)
backgroundImageView.image = UIImage(named: "textField")
backgroundImageView.image = backgroundImageView.image?.resizableImageWithCapInsets(UIEdgeInsetsMake(0,8,0,8))
self.zipTextField.addSubview(backgroundImageView)
//Validate the zip - Put this code in your Submit button
self.view.addSubview(self.zipTextField)
var zip = PTKAddressZip(string: "15227")
NSLog( zip.isValid().description )
【讨论】: