小编Rod*_*ici的帖子

Swift 包管理器混合语言源文件

由于某种原因,当我尝试swift build在我的Package.swift文件上运行时:import PackageDescription

let package = Package(
    name: "mobile-HDISegurado-ios",
    dependencies: [
        .package(url: "https://github.com/watson-developer-cloud/swift-sdk", from: "0.30.0"),
        ],
    targets: [
        .target(
            name: "mobile-HDISegurado-ios",
            dependencies: ["WatsonDeveloperCloud"],
            path: "mobile-HDISegurado-ios",
            exclude: [
                "Config",
                "Public",
                "Resources",
                ]
        )
    ] )
Run Code Online (Sandbox Code Playgroud)

我有以下错误:

错误:“.../mobile-HDISegurado-ios”的目标包含混合语言源文件;不支持的功能

更多细节:

  • swift 包工具版本:4.1.0
  • 运行 Cocoapods 的项目工作区。

package ios swift

16
推荐指数
1
解决办法
8796
查看次数

Swift Dictionary:将键和值连接到字符串中

我正在寻找一个最好的语法:

        let responseParameters = ["keyA" : "valueA", "keyB" : "valueB"]
        var responseString = ""
        for (key, value) in responseParameters {
            responseString += "\(key):\(value)"
            if Array(responseParameters.keys).last != key {
                responseString += "+"
            }
        }
        //responseString: keyA:valueA+keyB:valueB
Run Code Online (Sandbox Code Playgroud)

类似于数组joinWithSeparator,使用flatMap或类似的东西.(学习目的)

syntax dictionary swift

6
推荐指数
2
解决办法
2717
查看次数

App Store Connect TestFlight未显示任何构建

我正在尝试将构建添加到AppStore Connect,但显示“ No Builds”(无构建),该位置应为“ iOS”标记

在此处输入图片说明

我在另一个应用程序中具有相同的设置,并且工作正常:

在此处输入图片说明

我在“活动”选项卡中显示了构建,并且之前已经在运行。

ios testflight app-store-connect

5
推荐指数
1
解决办法
723
查看次数

DispatchQueue main 未被调用

我有一个异步任务来执行计算和动画,当动画开始时,队列暂停,当动画完成时,队列恢复。但由于某种原因,DispatchQueue.main.sync 从未被调用。

self.someQueue = DispatchQueue(label: "Animation", qos: .background, attributes: DispatchQueue.Attributes.concurrent)
    for index in stride(from: volumeObjects.count, to: -1, by: -1) {
        mainAsyncQueue.sync{
            self.dynamicViewModel.currentPercentile = Float(index)/Float(volumeObjects.count)
            self.currentObjectIndex = index
            print(index)

            DispatchQueue.main.sync {
                UIView.animate(withDuration: 1, animations: {
                    self.updateViewModelDynamicViewModel()
                }, completion: { (finished) in
                    self.someQueue.resume()
                })
            }
            self.someQueue.suspend()
        }
    }
Run Code Online (Sandbox Code Playgroud)

这只是一个小计算,我将用它来解决比这更复杂的任务

grand-central-dispatch ios swift

3
推荐指数
1
解决办法
1275
查看次数

UITableViewCell子类IBOutlets返回nil

我从故事板中设置了一个UITableViewCell子类,并将子视图连接为IBOutlets,您可以在此处查看:

public class WaitingStatusTableViewCell: UITableViewCell {

@IBOutlet weak var leftBoxView: UIView!
@IBOutlet weak var leftTimeLabel: UILabel!
@IBOutlet weak var leftTitleLabel: UILabel!
Run Code Online (Sandbox Code Playgroud)

覆盖了初始化者:

 override init(style: UITableViewCellStyle, reuseIdentifier: String?) {
    super.init(style: style, reuseIdentifier: reuseIdentifier)
    self.initialConfigure()
}

required public init(coder aDecoder: NSCoder) {
    super.init(coder: aDecoder)
    self.initialConfigure()
}
Run Code Online (Sandbox Code Playgroud)

在initialConfigure函数中,我尝试配置子视图的一些属性

    func initialConfigure() {
    self.leftBoxView.backgroundColor = UIColor.clearColor()
    self.leftBoxView.layer.shadowColor = UIColor.darkGrayColor().CGColor
    self.leftBoxView.layer.shadowPath = UIBezierPath(roundedRect: bounds, cornerRadius: 12.0).CGPath
    self.leftBoxView.layer.shadowOffset = CGSize(width: 2.0, height: 2.0)
    self.leftBoxView.layer.shadowOpacity = 1.0
    self.leftBoxView.layer.shadowRadius = 2
    self.leftBoxView.layer.masksToBounds = true
    self.leftBoxView.clipsToBounds = false
}
Run Code Online (Sandbox Code Playgroud)

它根本不起作用,我收到以下错误: …

uitableview swift

2
推荐指数
1
解决办法
1235
查看次数

Xcode:无法设置调试的优化级别

我无法添加它,并且没有调试优化,但我得到了日志:

ProjectName是通过优化编译的 - 步进可能表现得很奇怪; 变量可能无法使用.

在此输入图像描述

更多信息:我进入了编辑构建方案,并将其设置为调试模式.

optimization xcode ios

0
推荐指数
1
解决办法
1037
查看次数

Extension struct不是Swift的成员

创建了一个简单的扩展,允许我给UITableViewCell一个标识符,所以我可以命名它,就像Apple使用Notification.Name一样:

// UITableViewCellExtension.swift

extension UITableViewCell {
    public struct Identifier: RawRepresentable {
        public typealias RawValue = String

        public var rawValue: RawValue {
            return self._rawValue
        }

        private var _rawValue: RawValue

        public init(rawValue: RawValue) {
            self._rawValue = rawValue
        }

        public init(_ rawValue: RawValue) {
            self._rawValue = rawValue
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

在此之后,我们的想法是在UIViewController上添加这段代码,以便我可以组织我的单元格标识符:

// SomeViewController.swift

extension UITableViewCell.Identifier {
    static let wololo = UITableViewCell.Identifier("wololo")   
}
Run Code Online (Sandbox Code Playgroud)

但是我收到以下错误:

'Identifier'不是'UITableViewCell'类型的成员

现在事情变得有点疯狂: - 如果我在UITableViewCellExtension.swift上移动相同的扩展名,它会编译并且一切正常.- 如果我只是在SomeViewController的类体上添加静态let wololo = UITableViewCell.Identifier("wololo"),它就可以了.

已经检查了扩展文件和viewController的Target Membership.


有关原因的更多解释

// UITableViewExtension.swift
extension UITableView …
Run Code Online (Sandbox Code Playgroud)

extension-methods struct ios swift

0
推荐指数
1
解决办法
643
查看次数