小编Yak*_*sky的帖子

Xcode 9扩展/折叠括号/括号{}侧栏丢失

下找不到一个

Xcode▶首选项/文本编辑▶"代码折叠功能区"框.

xcode code-folding ios xcode9 xcode10

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

在9.0之前的iOS版本上模仿UIStackView`填充比例'布局方法

iOS 9.0附带UIStackView,可以根据内容大小更轻松地布局视图.例如,要根据内容宽度连续放置3个按钮,您只需将它们嵌入堆栈视图中,设置轴水平和分布 - 按比例填充.

Stack View解决方案

问题是如何在不支持堆栈视图的旧iOS版本中实现相同的结果.

我提出的一个解决方案是粗糙并且看起来不太好.再次,您将3个按钮连续放置并使用约束将它们固定到最近的邻居.在这之后你显然会看到内容优先模糊错误,因为自动布局系统不知道哪个按钮需要在其他按钮之前增长/缩小.

内容优先模糊

不幸的是,在应用程序启动之前标题是未知的,所以你可能会随意选择一个按钮.让我们说,我已经减少了从标准250到249的中间按钮优先级的水平内容.现在它将在其他两个之前增长.另一个问题是,左侧和右侧按钮严格缩小到其内容宽度,而没有像Stack View版本那样漂亮的填充.

布局比较

ios ios-autolayout

13
推荐指数
2
解决办法
3538
查看次数

9
推荐指数
1
解决办法
472
查看次数

如何将可选整数数组连接到字符串?

给定[Int?],需要从中构建字符串.

此代码段有效

    let optionalInt1: Int? = 1
    let optionalInt2: Int? = nil

    let unwrappedStrings = [optionalInt1, optionalInt2].flatMap({ $0 }).map({ String($0) })
    let string = unwrappedStrings.joined(separator: ",")
Run Code Online (Sandbox Code Playgroud)

但我不喜欢flatMap跟着map.有没有更好的解决方案?

arrays functional-programming optional swift

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

如何检查内部扩展名为nil

以下代码

extension String {

    func isValidEmail() -> Bool {
        if self == nil { return false }
Run Code Online (Sandbox Code Playgroud)

给我错误 Value of type 'String' can never be nil, comparison isn't allowed

有可能以某种方式检查零吗?

swift

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