草庐IT

ios - 在 Swift 4 中移动 UIBezierPath 笔划的最佳方式是什么?

我正在尝试实现一个可以使用UIBezierPath笔划在Swift4中更改位置的光标。目前,我有一个函数,它有一个参数位置,其中包含“光标”的新x和y位置。我想将此位置参数用作UIView中光标的新位置。每次调用该函数时,我当前的实现都会呈现另一个光标。有没有办法改变UIBezierPath的一个实例的位置?请参阅下面的示例代码以供引用。privatevarcursor:UIBezierPath=UIBezierPath()publicfuncchangeCursorLocation(location:ScreenCoordinates){self.cursor=UIBezierPat

ios - 显示来自 Core Data 的大量数据

我有这样一个任务摆在我面前:数据库中有10000多条记录,我需要将它们显示在TableView中,但是我不能把所有10000条都取出来并存储在数组中如何组织工作,例如,当在TableView中滚动100条记录时,从数据库中下载接下来的100条记录。我找到了fetchLimit和fetchOffset之类的东西,但我仍然不明白如何将它们用于我的任务。你会告诉我什么? 最佳答案 我相信如果您正在使用CoreData并且您需要UITableView,您应该勇敢地使用NSFetchedResultsController。来自Apple文档。

ios - 是否有可能无法读取 UserDefaults.standard 值?

我知道UserDefaults只是为了保存首选项,但这些首选项是持久的-保存在UserDefaults中的值会在无限次应用程序启动后保持不变,并且只要应用程序保持安装状态就始终可供读取。.对吧?这些值是否有可能在任何时候被清除或无法正确访问?在使用UserDefaults多年并依赖于它们持有的值的一致性之后,我现在在一天的工作中看到两次当我的应用程序启动并检查一个简单的bool值时,该值不正确。ifdefaults.bool(forKey:"beenLaunched"){此代码会在每次应用启动时运行。如果该值为true,我什么都不做,但如果它为false,我会设置一些值,因为这是用户第

swift - Playgrounds "Collect, Toggle, Repeat"包含 10 个或更少的基本命令?

iPadPlaygroundsapp,很早的挑战:你正在学习编程,你对变量、循环等一无所知。你唯一知道的关键字是func。游戏建议您第一次构建自己的功能。基本上,您只会使用屏幕上显示的内容:collectGem()、moveForward()、name()、toggleSwitch(),turnLeft(),turnRight()。你不会意外摔倒(所以额外的Action是可以接受的),目标是收集4颗gem并切换4个开关。我的第一次尝试是:谜题解决了,但告诉我:butyouused11commands!Trydefiningyourownfunction[...]Youwon'tneed

ios - 如何在 Swift 中限制文本字段中的数字?

我希望用户在文本字段中填写一个0到60之间的数字。我怎样才能将数字字符限制为2?如何限制最大数量为60?以及如何取消文本字段上的“粘贴”选项,使用户无法粘贴字母? 最佳答案 我认为有两种方法可以做到这一点。实现UITextFieldDelegate并实现功能functextField(textField:UITextField,shouldChangeCharactersInRangerange:NSRange,replacementStringstring:String)->Bool{varstartString=""iftext

ios - 主视图窗口中的 UISplitViewController 详细 View Controller 加载

我有一个具有以下布局的UISplitViewController,由一个主视图Controller和一个详细ViewController组成。这对于具有单个View的基本SplitView来说效果很好,但我需要支持来自UITableViewController(主视图)的多个segue,并且在数据传递之前不加载详细View;否则应用程序将因可选错误而崩溃。我试过这样设置;这将加载一个空白viewController作为详细信息View当uisplitViewController加载时,以及选择一行时,i具有详细信息,请访问其他ViewController,该详细信息将应在UISplit

ios - 创建 UICollectionViewCell 时如何在发件人中添加标签值?

我对swift不是很了解,所以我有一个问题要解决我应用中的一个问题。在UIView中,我刚刚添加了一个CollectionView作为subview,然后在每个单元格中,我在“WrapperView”中添加了一个不同的图像,所以我的问题是......我如何添加一个手势来接收每个单元格的发送者的标签值?例如,当我点击单元格时,它会打印indexPath我有这个代码:funccollectionView(collectionView:UICollectionView,cellForItemAtIndexPathindexPath:NSIndexPath)->UICollectionView

ios - 如何检查设备是 iPad 还是 iPhone 不工作

我目前正在更新一个应用程序,我需要知道该应用程序是否正在iPad上使用。我在网上查了一下,找到了下面的代码。我在Xcode中使用了iPad模拟器并运行了两个if语句。但是每当我运行代码时,什么都没有发生(打印消息不打印)这段代码是否适用于模拟器,还是我做错了什么?当我检查它是否是UIUserInterfaceIdiom.phone时,打印语句会执行,但我在模拟器中使用的是iPad。if(UI_USER_INTERFACE_IDIOM()==UIUserInterfaceIdiom.pad){print("ThisisaniPad")redoButton.layer.position.y

ios - AVExportSession 中 CALayer 中的视频重力

我的应用程序首先录制视频,然后在添加一些效果后使用AVExportSession导出输出。首先,问题是视频录制期间的视频引力问题,通过将AVCaptureVideoPreviewLayer中的videoGravity属性更改为AVLayerVideoGravityResizeAspectFill解决了这个问题。其次,问题在于显示录制的视频,解决方法是将AVPlayerLayer中的VideoGravity属性更改为AVLayerVideoGravityResizeAspectFill但是,现在的问题是,当我想在使用AVExportSession添加一些效果后导出视频时,又出现了一些视频

ios - 彩色打印预览不显示 UILabels

在iPad打印预览中不显示UILabels。当我放大打印预览时,它会正确显示。当我将UILabelopaque属性更改为true时,它会将UILabel的背景更改为黑色并在打印预览中显示。这是我用来显示打印预览的代码。letprintController=UIPrintInteractionController.sharedletprintInfo=UIPrintInfo(dictionary:nil)printInfo.outputType=UIPrintInfoOutputType.generalprintInfo.jobName="Print"printInfo.duplex=U