小编Joa*_*son的帖子

项目“project”已损坏,由于解析错误而无法打开。检查项目文件中的无效编辑...控制冲突

我正在尝试将 master 合并到我的功能分支中,并出现此错误。我环顾了互联网,并尝试自己调试这个问题,包括处理.pbxproj文件的冲突(没有显示)。我所走的所有道路都没有结果。我恳请我应该采取的任何方向(即查看哪些文件)。先感谢您。

git xcode ios

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

从“compactMap()”闭包返回“nil”失败结果类型检查

在此代码片段中,我尝试映射[RegisteredMediaAttachment][BasicAttachmentInput],但仅限于那些具有可解析 的项目uploadUrl

    private func createSecondaryAttachments(
        _ attachments: [RegisteredMediaAttachment]
    ) -> [BasicAttachmentInput] {
        return attachments.compactMap {
            guard let name = URL(string: $0.registration.uploadUrl) else {
                return nil
            }

            return BasicAttachmentInput(
                name: name,
                contentType: $0.attachment.type.mime(),
                sizeBytes: $0.attachment.data.count,
                mediaId: $0.registration.media.id
            )
        }
    }
Run Code Online (Sandbox Code Playgroud)

然而,斯威夫特在网上抱怨return nil'nil' is not compatible with closure result type 'BasicAttachmentInput'

这让我很惊讶。我希望该函数编译并减少映射结果以仅包含nilcompactMap闭包返回的非值。上面的片段有什么问题?

functional-programming swift

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

Swift:使用保护语句的好处?

刚刚学习 Swiftguard关键字,我想知道它会实现什么优势。

例如,假设我有以下代码:

func getEmail(email: String?) -> String {
    guard email != "" else {
        return ""
    }
    return email! + "@somewhere.com"
}

print(getEmail(email: "test123"))
Run Code Online (Sandbox Code Playgroud)

我可以写...

if email == "" {
    return ""
}
return email! + "@somewhere.com" 
Run Code Online (Sandbox Code Playgroud)

……也是。

那么拥有guard-keyword 有什么好处呢?

它只是有(一点点)语法糖吗?

ios swift

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

使用正则表达式,捕获数字组的最佳方法是什么,忽略其中的任何空格

给定以下字符串...

ABC DEF GHI: 319 022 6543 QRS : 531 450
Run Code Online (Sandbox Code Playgroud)

我正在尝试提取以数字开头/结尾并且可能包含空格的所有范围,但我希望删除空格本身。

例如,上面应该产生两个结果(因为有两个“范围”符合我的目标寻找)......

3190226543
531450
Run Code Online (Sandbox Code Playgroud)

我的第一个想法是这个,但这与字母之间的空格匹配......

([\d\s])
Run Code Online (Sandbox Code Playgroud)

然后我尝试了这个,但似乎没有任何效果......

([\d+\s*])
Run Code Online (Sandbox Code Playgroud)

这个很接近,但它也抓住了尾随空格。此外,这会抓住空白,但不会将其删除。

(\d[\d\s]+)
Run Code Online (Sandbox Code Playgroud)

如果不可能删除单个语句中的空格,如果我可以正确提取它们,我总是可以对这些组进行后处理。最近的声明很接近,但我怎么说它不是以空格结尾,而只是一个数字呢?

那么缺少的表达是什么呢?另外,由于有时人们只是发布答案,因此解释正则表达式也有助于帮助其他人弄清楚如何做到这一点。我不仅喜欢解决方案,还喜欢一种解释。:)

注意:我知道不同平台上的正则表达式之间可能存在一些差异,因此如果这些差异由读者自行决定,那就没问题了。我对理解正则表达式本身的基本机制比语法更感兴趣。也就是说,如果有帮助的话,我正在使用 Swift 和 C#。

c# regex

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

NSURLConnection 在 Swift 4 中完成并出现错误 - 代码 -1100

我想在没有 https 的情况下在 webview 中打开给定的 url(例如 myDomain.com)。我得到了

NSURLConnection 已完成,但出现错误 - 代码 -1100

Android 上快速打开 url 时出错。我该怎么做?

let url = URL(string: "myDomain.com")

webView.loadRequest(URLRequest(url: url!))
Run Code Online (Sandbox Code Playgroud)

nsurlconnection swift

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

是否可以添加条件,其中协议由任一类确认,在 where 子句 Self 中提供多个选项

让我们假设我们有

protocol xyz {

}

class A: xyz {
}

class B: xyz {
}

class C: xyz{
}
Run Code Online (Sandbox Code Playgroud)

仅当实例属于 A 或 B 类类型时才调用 xyz 的扩展

extension xyz where Self: A, B {

}
Run Code Online (Sandbox Code Playgroud)

ios swift

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

跳过 SwiftCharts 中的轴标签

我正在使用新的 Swift Charts ( https://developer.apple.com/documentation/charts ) 框架来创建条形图。

Chart {

    BarMark(
        x: .value("Name", "Item 1"),
        y: .value("Count", 2)
    )

    BarMark(
        x: .value("Name", "Item 2"),
        y: .value("Count", 9)
    )

    BarMark(
        x: .value("Name", "Item 3"),
        y: .value("Count", 4)
    )

    BarMark(
        x: .value("Name", "Item 4"),
        y: .value("Count", 12)
    )

    BarMark(
        x: .value("Name", "Item 5"),
        y: .value("Count", 6)
    )

    BarMark(
        x: .value("Name", "Item 6"),
        y: .value("Count", 5)
    )

}

.chartXAxis {
    
    AxisMarks {

        AxisGridline()
        AxisTick()
        AxisLabel()

    }

}

Run Code Online (Sandbox Code Playgroud)

在 x 轴上,我只想跳过每个第二个元素的标签。我想保留网格线和刻度线。使用步幅作为值是行不通的。

有谁知道如何实现这一目标?

谢谢。

ios swift swiftui-charts

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

怎么把yyy / MM / ss hh:mm:ss转换成秒?

介绍

我正在尝试从两个纪元中获得几秒钟的差异

2019-05-22 18:28:56-> 1558542536秒

2019-07-22 19:00:00-> 1563814800秒

差异将是:5,272,264?秒

此日期格式来自二进制文件,作为字符串

我的密码

public static void main(String[] args) throws ParseException
{
    String regEpoch = "";
    long result = 0;

    //System.out.println((fecha = dateFormat.format(date)));


    try(RandomAccessFile raf = new RandomAccessFile("binario2.txt", "rw")){
      //user inputs a code (for now, doesn't matter if exists or not)
      System.out.print("Input a code to look for: ");
        String code = scan.next();
            while(!code.matches("\\d+"))
            {
                System.out.println("[ERROR] Only digits accepted");
                System.out.print("Input a code to look for: ");
                    code = scan.next();
            }


        //Gets the …
Run Code Online (Sandbox Code Playgroud)

java format date epoch seconds

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