我有一个使用多个文本字段的应用程序,用户在其中提供地址和个人数据(姓名等)。
我知道有一个名为textContentTypea 的属性UITextField。如果我设置它,键盘上方的栏会正确显示数据。但由于用户必须手动转到下一个文本字段,因此自动填充一个字段并不会自动填充所有字段。
有没有一种方法可以像在 Safari 或系统中的其他地方一样实现自动填充所有字段,其中用户仅自动填充一个字段,然后在表单中填充选定的联系人数据?或者我是否必须使用该Contacts框架来获取用户的联系卡?
我正在尝试将 2 个文件发送到我的 Apple Watch 应用。它最初有效,但现在我在控制台中打印了 2 个错误。
WCSession.default.transferFile(fileURL1, metadata: ["name":"first"])
WCSession.default.transferFile(fileURL2, metadata: ["name":"second")
Run Code Online (Sandbox Code Playgroud)
谁在打印错误 - 是我 iPhone 上的测试应用程序吗?
我可以按顺序传输 2 个文件,还是有限制 - 我需要等待第一个传输完成吗?
2018-11-18 11:05:53.010374-0500 SimpleWatchConnectivity[836:23347] [WC] -[WCFileStorage enumerateFileTransferResultsWithBlock:] 无法在路径 /var/mobile/Containers/Data/Application/C07047D9-87F7-4CBD 加载文件数据-AE79-AAE26D93A400/库/应用程序支持/com.apple.watchconnectivity/46CAD076-37A8-4B60-A93E-F0F21F457593/文件传输/D9E589D8-E21B-4A34-9A29-8D6B53E997D5/文件传输结果
该文档使文件看起来像是已排队,因此我不确定导致错误的原因:
/** 系统会将文件入队并在适当的时候将其传输到对应的应用程序。发送应用程序退出后,文件传输将继续。如果文件成功到达,对应的应用程序将在下次启动时收到委托回调。元数据字典只能接受属性列表类型。*/
在 iOS 12 中,我有一个用于注册流程的新密码文本字段,我希望系统建议一个强密码。我还有一个基于委托方法启用和禁用的按钮,我做了一些更改等。
textField(_ textField: UITextField, shouldChangeCharactersIn range: NSRange, replacementString string: String)
这对于在用户点击 时启用它很有用Use Strong Password。但是我似乎没有收到用户可能点击时的委托回调,Choose My Own Password因此我的按钮启用/禁用逻辑永远没有机会执行,允许某人使用空白密码进行注册。
关于当用户点击时我可能不需要做什么来获得回调的任何想法Choose my own password?任何帮助是极大的赞赏。
假设您有一个带有普通自定义 UICollectionViewLayout 的 UICollectionView。
所以这不是<<<流布局 - 这是一个正常的自定义布局。
自定义布局很简单,在prepare调用中您只需遍历数据并布置每个矩形即可。所以说这是一个垂直滚动集合......
override func prepare() {
cache = []
var y: CGFloat = 0
let k = collectionView?.numberOfItems(inSection: 0) ?? 0
// or indeed, just get that direct from your data
for i in 0 ..< k {
// say you have three cell types ...
let h = ... depending on the cell type, say 100, 200 or 300
let f = CGRect(
origin: CGPoint(x: 0, y: y ), …Run Code Online (Sandbox Code Playgroud) 在 ios12 中,表情符号显示完美,但我更新了 Xcode,在 iOS 13 中,所有表情符号都变成灰色,请帮助我如何解决此问题。
在我写的代码中, //显示弹出窗口
let otherAlert = UIAlertController(title: "Souhaites-tu supprimer cette notification ?", message: "", preferredStyle: UIAlertController.Style.actionSheet)
Run Code Online (Sandbox Code Playgroud)
我正在更新现有的应用程序以支持iOS 12并CIFilter出现奇怪的问题.
这是一个简单的类,有一个功能generate():
class QRGenerator {
static func generate(from string: String) -> UIImage? {
let context = CIContext()
let data = string.data(using: String.Encoding.ascii)
if let filter = CIFilter(name: "CIQRCodeGenerator") {
filter.setValue(data, forKey: "inputMessage")
let transform = CGAffineTransform(scaleX: 7, y: 7)
if let output = filter.outputImage?.transformed(by: transform), let cgImage = context.createCGImage(output, from: output.extent) {
return UIImage(cgImage: cgImage)
}
}
return nil
}
}
Run Code Online (Sandbox Code Playgroud)
这个类完美地工作到iOS 12.现在排队if let filter = CIFilter(name: "CIQRCodeGenerator")我总是收到零.
我花了一些时间在Apple文档上,但没有找到有关此问题的任何有用信息.
我突然在iOS12 / XCode 9上收到一堆警告。为什么会有多个ManagedObjectModels?该应用程序只有一个* .xcdatamodeld文件,但是模型中有多个版本。
这是iOS12 Coredata的一项新功能吗,我可以做些什么来防止此警告,还是应该忽略它?
2018-09-18 11:45:34.487073+1000 xxxxxxxxx[4422:1419983] [error] warning: 'Stats' (0x2812f1550) from NSManagedObjectModel (0x2806ff480) claims 'Stats'.
CoreData: warning: 'Stats' (0x2812f1550) from NSManagedObjectModel (0x2806ff480) claims 'Stats'.
2018-09-18 11:45:34.487084+1000 xxxxxxxxx[4422:1419983] [error] warning: 'Stats' (0x2812f3bd0) from NSManagedObjectModel (0x2806b18b0) claims 'Stats'.
CoreData: warning: 'Stats' (0x2812f3bd0) from NSManagedObjectModel (0x2806b18b0) claims 'Stats'.
Run Code Online (Sandbox Code Playgroud) 在iOS 12之前使用该功能isIdleTimerDisabled已使我们的应用无法进入睡眠状态,但是自iOS 12开始,此功能似乎不再起作用。
这是iOS 12的错误,还是我在这里做错了?
我写在这里因为我真的卡住了,找不到答案.
我们有一个可以在里面收集IDFA的小框架.对于IDFA收集,我们首先检查NSClassFromString(@"ASIdentifierManager")
问题是:
想象一下,我们有一个客户端和这个客户端发布的iOS10-iOS12版本.此客户端获得iOS10和iOS11的IDFA,但对于所有iOS12,根本没有IDFA!检查NSClassFromString(@"ASIdentifierManager")完日志后,我们发现仅适用于iOS12 ..
客户端如何为iOS10,11而不是iOS12添加框架?
另一方面,另一个客户端在iOS12上运行良好.