Questions tagged «swift»

Swift是Apple Inc.针对其平台和Linux开发的一种安全,快速且具有表现力的通用编程语言。Swift是开源的。仅将标记用于有关语言功能或在Swift中需要代码的问题。将标签[ios],[ipados],[macos],[watch-os],[tvos],[cocoa-touch]和[cocoa]用于有关平台或框架的(语言不可知)问题。

7
为什么UICollectionViewCell的出口为零?
我在Interface Builder中创建了一个自定义UICollectionViewCell,将其上的视图绑定到该类,然后当我要使用字符串并将其设置为字符串上的标签时,tha标签的值为nil。 override func viewDidLoad() { super.viewDidLoad() // Register cell classes self.collectionView.registerClass(LeftMenuCollectionViewCell.self, forCellWithReuseIdentifier: "ls") } override func collectionView(collectionView: UICollectionView!, cellForItemAtIndexPath indexPath: NSIndexPath!) -> UICollectionViewCell! { var cell: LeftMenuCollectionViewCell cell = collectionView.dequeueReusableCellWithReuseIdentifier("ls", forIndexPath: indexPath) as LeftMenuCollectionViewCell println(cell.label) // <- this is nil, why?? cell.label.text = "asd" return cell } 和子类的单元格: class …

4
Swift编译器错误:字符串连接中的“表达式过于复杂”
我发现这比任何事情都有趣。我已经解决了,但是我想知道原因。错误如下:DataManager.swift:51:90: Expression was too complex to be solved in reasonable time; consider breaking up the expression into distinct sub-expressions。为什么抱怨呢?似乎是最简单的表达方式之一。 编译器指向该columns + ");";部分 func tableName() -> String { return("users"); } func createTableStatement(schema: [String]) -> String { var schema = schema; schema.append("id string"); schema.append("created integer"); schema.append("updated integer"); schema.append("model blob"); var columns: String …

5
在Swift中使用索引映射或缩小
有没有办法在Swift map或reduceSwift中获取数组的索引?我正在寻找类似each_with_indexRuby的东西。 func lunhCheck(number : String) -> Bool { var odd = true; return reverse(number).map { String($0).toInt()! }.reduce(0) { odd = !odd return $0 + (odd ? ($1 == 9 ? 9 : ($1 * 2) % 9) : $1) } % 10 == 0 } lunhCheck("49927398716") lunhCheck("49927398717") 我想摆脱上面的odd变量。

14
在Swift中展平数组数组
在Swift中flatten,Scala,Xtend,Groovy,Ruby和co中有对应的产品吗? var aofa = [[1,2,3],[4],[5,6,7,8,9]] aofa.flatten() // shall deliver [1,2,3,4,5,6,7,8,9] 我当然可以使用reduce,但是有点烂 var flattened = aofa.reduce(Int[]()){ a,i in var b : Int[] = a b.extend(i) return b }
143 swift 



20
具有动态单元格高度的UITableView的reloadData()导致跳跃式滚动
我觉得这可能是一个常见的问题,并且想知道是否有任何通用的解决方案。 基本上,我的UITableView具有每个单元格的动态单元格高度。如果我不在UITableView和I的顶部,则tableView.reloadData()向上滚动变得跳动。 我相信这是由于以下事实:当我向上滚动时重新加载数据时,UITableView正在重新计算每个可见单元的高度。如何缓解这种情况,或者如何仅将数据从某个IndexPath重新加载到UITableView的末尾? 此外,当我确实设法一直滚动到顶部时,我可以先向下再向上滚动,毫无问题。这很可能是因为已经计算了UITableViewCell的高度。


17
使用AVFoundation AVPlayer循环播放视频?
在AVFoundation中是否有相对简单的循环视频的方法? 我已经如下创建了我的AVPlayer和AVPlayerLayer: avPlayer = [[AVPlayer playerWithURL:videoUrl] retain]; avPlayerLayer = [[AVPlayerLayer playerLayerWithPlayer:avPlayer] retain]; avPlayerLayer.frame = contentView.layer.bounds; [contentView.layer addSublayer: avPlayerLayer]; 然后播放以下视频: [avPlayer play]; 视频播放正常,但在最后停止。使用MPMoviePlayerController,您所要做的就是将其repeatMode属性设置为正确的值。在AVPlayer上似乎没有类似的属性。似乎也没有回调可以告诉我电影何时结束,因此我可以寻找开始并再次播放。 我没有使用MPMoviePlayerController,因为它有一些严重的限制。我希望能够一次播放多个视频流。


23
自定义UITableView标头部分
我想UITableView为每个部分自定义标题。到目前为止,我已经实施了 -(UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section 这种UITabelViewDelegate方法。我想要做的是获取每个部分的当前标题,然后将其添加UILabel为子视图。 到目前为止,我还无法完成。因为,我找不到任何东西来获取默认节头。第一个问题,有什么方法可以获取默认节头? 如果不可能,那么我需要创建一个容器视图UIView,但这一次,我需要设置默认的背景颜色,阴影颜色等。因为,如果仔细查看节的标题,它已经被自定义了。 如何获取每个节标题的这些默认值? 谢谢你们。

9
将URL转换为String并再次返回
因此,我已将转换NSURL为String。所以,如果我println看起来像file:///Users/...等。 后来我希望将其恢复为a,NSURL因此我尝试将其转换回如下所示,但是我丢失了上面的字符串版本中出现的两个正斜杠,从而由于in url无效而破坏了代码。 为什么我的转换又回到NSURL从String给出的斜杠中删除两个正斜杠的方式,又如何才能转换回NSURL包含三个正斜杠的斜杠? var urlstring: String = recordingsDictionaryArray[selectedRow]["path"] as String println("the url string = \(urlstring)") // looks like file:///Users/........etc var url = NSURL.fileURLWithPath(urlstring) println("the url = \(url!)") // looks like file:/Users/......etc
141 swift  nsurl 

4
为Swift中的Optional提供默认值?
在Swift中处理可选选项的习惯用法似乎过于冗长,如果您只想在nil为零的情况下提供默认值,则它是: if let value = optionalValue { // do something with 'value' } else { // do the same thing with your default value } 涉及不必要地复制代码,或 var unwrappedValue if let value = optionalValue { unwrappedValue = value } else { unwrappedValue = defaultValue } 这不需要unwrappedValue是常数。 Scala的Option monad(与Swift的Optional基本相同)具有getOrElse用于此目的的方法: val myValue = …
141 swift  optional 


7
将闭包作为变量存储在Swift中
在Objective-C中,您可以定义块的输入和输出,存储传递给方法的那些块之一,然后在以后使用该块: // in .h typedef void (^APLCalibrationProgressHandler)(float percentComplete); typedef void (^APLCalibrationCompletionHandler)(NSInteger measuredPower, NSError *error); // in .m @property (strong) APLCalibrationProgressHandler progressHandler; @property (strong) APLCalibrationCompletionHandler completionHandler; - (id)initWithRegion:(CLBeaconRegion *)region completionHandler:(APLCalibrationCompletionHandler)handler { self = [super init]; if(self) { ... _completionHandler = [handler copy]; .. } return self; } - (void)performCalibrationWithProgressHandler:(APLCalibrationProgressHandler)handler { ... …

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.