gpt4 book ai didi

ios - 将 UIPrinter 保存到 NSUserDefaults

转载 作者:行者123 更新时间:2023-11-28 18:53:21 25 4
gpt4 key购买 nike

我正在尝试像这样保存一个 UIPrinter 对象。

-(IBAction)setPrinterInSettings:(id)sender{

UIPrinterPickerController *picker = [UIPrinterPickerController printerPickerControllerWithInitiallySelectedPrinter:self.SavedPrinter];
[picker presentFromRect:self.settingsButton.frame inView:self.view animated:YES completionHandler:^(UIPrinterPickerController *controller, BOOL userDidSelect, NSError *err) {
if (userDidSelect) {
self.SavedPrinter = controller.selectedPrinter;
NSLog(@"self.SavedPrinter == %@",self.SavedPrinter);

[self saveCustomObject:self.SavedPrinter key:@"SavedPrinter"];

[[NSUserDefaults standardUserDefaults] setObject:self.SavedPrinter forKey:@"SavedPrinter"];
[[NSUserDefaults standardUserDefaults] synchronize];
}

}];

}

当我尝试保存在 [[NSUserDefaults standardUserDefaults] setObject:self.SavedPrinter forKey:@"SavedPrinter"]; 时崩溃,我收到此消息作为错误 -[UIPrinter encodeWithCoder:]: 无法识别的选择器发送到实例 0x7fb204062760。我需要它来记住用户选择的打印机并记住它,即使应用程序退出后台也是如此。如果有人可以提供帮助,那就太好了!

最佳答案

您不能在 NSUserDefaults 中存储 UIPrinter 实例。您可以做的是保存打印机的 URL,然后当您的应用再次启动并且您需要 UIPrinter 时,从 NSUserDefaults 读取 URL 并使用 UIPrinter printerWithURL:.

关于ios - 将 UIPrinter 保存到 NSUserDefaults,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37174540/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com