草庐IT

material-swift

全部标签

swift - 隐藏导航栏时更改状态栏颜色

我想在隐藏导航栏时设置状态栏的黑色(栏色调颜色)和白色色调颜色。我想要它用于特定View。我试过这个:overridefuncviewDidLoad(){super.viewDidLoad()self.navigationController?.setNavigationBarHidden(true,animated:true)self.navigationController?.navigationBar.barStyle=UIBarStyle.Blackself.navigationController?.navigationBar.barTintColor=UIColor.bla

swift - 是否可以在 Typhoon 中注册协议(protocol)以快速与 TyphoonComponentFactory.componentForType 一起使用

TyphoonComponentFactoryProtocol.componentForType(classOrProtocol:AnyObject!)无法接受协议(protocol)据我所知,MyProtocol.self返回一个协议(protocol),而协议(protocol)似乎没有实现AnyObject协议(protocol)(仅Any)。有没有办法在swift中基于协议(protocol)使用Typhoon进行服务定位(而不是直接调用汇编函数),或者这只是目前swift和typhoon的限制? 最佳答案 不幸的是,这个方

ios - Swift 中的 Typhoon 惰性注入(inject)

在尝试使用TyphoonDI时,我意识到LazySingleton范围没有按预期工作,这意味着惰性属性甚至在使用之前就被注入(inject)了。更具体地说,我创建了一个TyphoonAssembly,如下所示:publicclassAppAssembly:TyphoonAssembly{publicdynamicfuncknight()->AnyObject{returnTyphoonDefinition.withClass(Knight.self){(definition)indefinition.injectProperty("name",with:"Dragon")definit

在自定义 Array2D 类上枚举的 Swift for-in 循环?

我将如何实现一个自定义枚举函数来实现这样的功能(Swift2):for((column,row),item)inArray2D.enumerate(){...}在我简单的Array2D结构中:structArray2D:SequenceType{letcolumns:Intletrows:Intprivatevararray:Arrayinit(columns:Int,rows:Int){self.columns=columnsself.rows=rowsarray=Array(count:rows*columns,repeatedValue:nil)}subscript(column

ios - 在 Swift 中将变量从前台传递到后台

我正在开发一个iOS应用程序,我想在其中记录用户按下特定按钮的时间并保留它。后面我会在后台使用这个时间记录。有没有一种不调用NSUserDefaults或CoreData或任何其他数据库的好方法?我是iOS开发的新手。我认为这很可能是一个幼稚的问题。但我只是好奇。请不要笑话我哈哈。编辑:这确实是一个很幼稚的问题哈哈。 最佳答案 要确保您的数据在您的应用中随处可用并且仅在每个应用session中持续存在,一种简单的方法是使用单例。像这样。//CreateaclasstostorethedataclassSessionData:NSOb

ios - 在 GameScene.swift 中显示 UIActivityViewController

我开发了一个小游戏,它由主菜单、游戏本身和一个游戏结束标签组成。我的问题是我已经在GameScene.swift文件中以编程方式添加了所有内容。现在我可以使用这行代码呈现一个UIActivityViewController:classGameScene:SKScene,SKPhysicsContactDelegate{vargameViewController:GameViewController!在GameViewController.swift中,我将这段代码放在viewDidLoad()函数中:scene.gameViewController=self然后我将以下函数添加到我的G

ios - 在 Swift 中将数组元素递增 1

我目前正在使用XCode开发一个swift项目,我遇到了一个问题,我无法通过各种努力来增加数组的一个元素。我的ViewController.SwiftimportUIKitclassFailureViewController:UIViewController{@IBOutletweakvarfailFactLabel:UILabel!letfailFact=Failure()overridefuncviewDidLoad(){super.viewDidLoad()failFactLabel.text=failFact.failArray[0]}@IBActionfuncshowFunF

ios - 条件声明 Swift 的数组索引超出范围错误

functableView(tableView:UITableView,heightForRowAtIndexPathindexPath:NSIndexPath)->CGFloat{ifletgetimURL=newslists[indexPath.section][indexPath.row].imageURLasString?{ifgetimURL!="None"{return230.0};return70.0}else{return70.0}}当我的网络连接不好时,这个错误经常出现,可能导致newslists数组填充速度太慢,反正索引越界错误指的是行如果让getimURL=new

swift - Swift 中的运行配速计算器

我是Swift的新手。我在Playground中创建了一个运行配速计算器作为实验,它运行良好,但我很难弄清楚如何将它连接到UI。我目前特别纠结的事情:将文本字符串转换为Int标签执行计算的函数是否在IBAction中?Playground代码importUIKitfuncPaceCalculator(minutes:Double,seconds:Double,distance:Double)->Double{return((minutes*60)+seconds)/distance}varpaceInSeconds=PaceCalculator(28,26,10.1)varpaceIn

swift - 如何存储选项

由于Realm不支持不是Object子类的可选项,我试图将字符串包装到StringObject中:finalclassStringObject:Object{dynamicvarvalue:String=""convenienceinit?(_value:String?){self.init()ifletvalue=value{self.value=value}else{returnnil}}}然后像这样使用它:finalclassPerson:Object{dynamicvarfirstName:String=""dynamicvarlastName:StringObject?//c