ios - 并非所有 Stripe 占位符都一次在我的屏幕上可见
问题描述
嗨,我试图在我的屏幕上一次显示所有三个占位符,并且在我更改了条纹支付文本字段名称STPPaymentCardTextField中的占位符名称之后
我像这样在故事板中给占位符命名
但是当我在模拟器中运行我的程序时,我得到了这个输出:
每当我尝试在文本字段中输入那些选择的详细信息时,它只会显示占位符,例如
我想显示 4242424242424242 的占位符卡号替换如何解决此问题。
@IBOutlet weak var cardview: STPPaymentCardTextField!
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
cardview.numberPlaceholder = "CardNumber"
cardview.cvcPlaceholder = "CVC"
cardview.expirationPlaceholder = "MM/YY"
}*
解决方案
首先,您不需要在情节提要或 viewDidLoad 中为 MM/YY 和 CVC 设置自定义占位符,因为它们已经是默认占位符,请参阅STPPaymentCardTextField.h上的代码参考:
/**
The placeholder for the expiration field. Defaults to @"MM/YY".
*/
@property (nonatomic, copy, nullable) IBInspectable NSString *expirationPlaceholder;
/**
The placeholder for the cvc field. Defaults to @"CVC".
*/
@property (nonatomic, copy, nullable) IBInspectable NSString *cvcPlaceholder;
关于您无法在一个屏幕上直接看到作者的所有三个占位符的问题:
这是故意的。如果您在 CC 字段中输入有效的信用卡号,它将滑开以显示到期和 CVC 字段。
在像 iPad 这样的大屏幕中,横向模式下的这些通常是所有三个同时可见的,因为它们可以一起放入屏幕中。
推荐阅读
- spring-boot - spring security 身份验证和资源服务器分离的 check_token 未发送授权标头(outh2 jwt spring boot,zuul)
- mysql - 基于三个表的层次结构
- docker - 从运行在 DinD 内部的容器访问 GitLab CI 服务
- c# - MassTransit RabbitMQ AspNetCore 未启动总线并注册接收端点
- listview - 条目在两层 ListView 中不起作用
- javascript - 对于使用 javascript 填充的文本框,仍显示 requiredfieldvalidator 的验证消息
- python - Plotly Sankey 图组标签和颜色
- ruby - 如何修复 Linux 中的“usr/bin/google-chrome 不再运行,因此 ChromeDriver 假设 Chrome 已崩溃”错误?
- typescript - 如何使用泛型类型和不同的构造函数扩展 2 个类?
- angular - 带有自定义组件的表单无法识别控件