草庐IT

swift-keypath

全部标签

swift - 如何在设备旋转时自动调整 UICollectionView 的大小?

每次旋转设备时,我都试图调整我的collectionViewCells的大小,但我不知道如何调整。这是我的问题和我的代码。它在Swift3和Xcode8中。这是我们加载的第一个屏幕当我旋转设备单元时仍然具有相同的宽高另一方面,如果我在设备旋转(横向)时加载firstScreen(HomePage),然后再次将设备旋转为纵向,单元格会溢出,所以我看不到它们的侧面。因为宽度仍然与横向宽度相同。//MARK:UICollectionViewDataSourceoverridefuncnumberOfSections(incollectionView:UICollectionView)->In

ios - 在 Swift 中跨多个目标共享 Storyboard

我有一个包含两个目标的应用,这两个目标具有几乎相同的用户界面和功能(预先付费与IAP)。出于这个原因,他们共享一个Storyboard。在Objective-C中,这没有问题。但是现在我开始使用Swift实现新的ViewController。我遇到的问题是我需要为我的Storyboard中实现的自定义ViewController指定一个“模块”。自定义ViewController的身份检查器看起来像:我被迫指定我的目标之一。无论我选择哪个目标,另一个目标都会崩溃并显示如下消息:2017-01-1517:26:32.284TapTyping[85802:15083599]Unknownc

swift - 在 spritekit 中随机化不同的敌人向玩家移动

我想知道是否有人可以回答我的问题。我在Sprite-kit中使用纹理图集创建了3种不同的敌人动画,我想知道是否有一种方法可以在游戏开始后立即随机选择一个敌人向玩家移动。TextureAtlas=SKTextureAtlas(named:"zombies.atlas")foriin1...TextureAtlas.textureNames.count{letZ="z\(i).png"zombieArray.append(SKTexture(imageNamed:Z))}TextureAtlas=SKTextureAtlas(named:"baldzomb.atlas")foriin1..

Swift 动态按钮创建

我是swift的新手。我通过使用以下代码在同一个viewController中按下另一个按钮来创建动态按钮:@IBActionfuncyenibtn(sender:AnyObject){letbtn=UIButton()btn.frame=CGRectMake(10,10,50,50)//setframebtn.setTitle("btn",forState:.Normal)//setbuttontitlebtn.setTitleColor(UIColor.redColor(),forState:.Normal)//setbuttontitlecolorbtn.backgroundCo

swift - 如何获取数组中排在第二位的元素的索引?

这个问题在这里已经有了答案:Swift:secondoccurrencewithindexOf(6个答案)关闭5年前。我有一个数组[a,b,a,c,d]我可以通过array.index(where:{$0isa})获取第一个a的索引如何获取第二项a的索引?

ios - 无法在 Swift 中的 UITableViewController 中呈现 UIAlertController

我有一个UIAlertController,我想在UITableViewController中显示它。但是,当我运行代码时,出现以下错误:Warning:Attempttopresentonwhoseviewisnotinthewindowhierarchy!我的代码似乎反射(reflect)了answer中的建议.我做错了什么?overridefuncviewDidLoad(){super.viewDidLoad()//Checkforforcetouchfeature,andaddforcetouch/previewingcapability.iftraitCollection.f

swift - 在不阻塞主线程的情况下连续运行线程

我写了一段代码,我需要不断地运行它。最初我使用RunLoop.current.run()。它工作正常。问题是它阻塞了主线程。如何在不阻塞的情况下连续在后台运行它。基本类结构:classKeylogger{funcstart(){letobserver=UnsafeMutableRawPointer(Unmanaged.passUnretained(self).toOpaque())/*ConnectedandDisconnectedCallBacks*/IOHIDManagerRegisterDeviceMatchingCallback(manager,Handle_DeviceMat

ios - 时间改变时如何执行操作Swift 3

我的应用程序应该在时间改变时(每分钟,而不是每秒)执行一个操作。我实现这一目标的方法是创建一个Timer对象,如下所示:vartimer=Timer.scheduledTimer(timeInterval:60,target:self,selector:#selector(ViewController.update),userInfo:nil,repeats:true)虽然这种方式可行,但看起来不是很专业,因为应用程序不会在时间更改时准确执行更新,而是取决于对象创建的精确时刻。例如,如果Timer对象是在10:10:30创建的,那么更新只会在分钟更改后30秒执行。有什么方法可以让我知道

swift - 如何从 swift 3 将 x-www-form-urlencoded 发布到 REST api

为了POST到我用nodejs编写的RESTAPI,我编写了以下内容。但是我在服务器端没有得到任何响应。funclogin(){letu=UserDefaults.standard.value(forKey:"userIP")!leturl_to_login="http://\(u)/users/authenticate"leturl:URL=URL(string:url_to_login)!letrequest=NSMutableURLRequest(url:url)letpostDataString="tag=name:example@hotmail.co.uk&password:

swift - 这是显示异步数据的好方法吗?

我是异步编码的新手,想知道我用来获取和显示数据的方法在swift中是否被认为是正确的。此方法从数据库中用户的部分获取对象列表,然后为列表中的每个项目获取图片。我判断是否已获取所有图像的方式是在它们到达时将它们推送到一个数组,然后如果该数组的长度等于我重新加载View的对象列表。这是我的代码:varpets=[String]()varimgs=[UIImage]()overridefuncviewDidAppear(_animated:Bool){imgsLoaded=0imgs.removeAll(keepingCapacity:false)//Clearimagesarraypets