我可以观察CNContactStoreDidChangeNotification应用程序处于后台状态时更改联系人数据库的时间.我很确定只添加了一个观察者NSNotificationCenter.NSNotificationCenter即使我只添加一个新联系人,问题是发布多次(2,3,5甚至更多次).问题出在哪儿?
在Swift中,当使用时[weak self] in,当嵌套在另一个闭包中时,我应该加倍使用。
例:
override func viewDidLoad() {
super.viewDidLoad()
makeAPICall() { [weak self] in
self?.finishedAPICall = true
DispatchQueue.main.async { [weak self] in
// random code with self
self?.view.layoutIfNeeded()
}
}
}
func makeAPICall(completion: () -> Void) {}
Run Code Online (Sandbox Code Playgroud)
最外层[weak self]使得以下所有自我都是可选的。这是否意味着它也一直在将其保存在嵌套闭包内部的内存中?如果我在两个方面都使用自我,是否在两个方面都需要自我?
这有什么区别吗:
layer.shadowColor = UIColor.black.withAlphaComponent(0.5).cgColor
layer.shadowOpacity = 1
Run Code Online (Sandbox Code Playgroud)
和这个:
layer.shadowColor = UIColor.black.cgColor
layer.shadowOpacity = 0.5
Run Code Online (Sandbox Code Playgroud)
?
它们看起来相同,但即使它们相同,是否有任何可能的性能差异?
有没有办法增加Xcode中自动完成框的宽度?
我在宽屏显示器上运行Xcode,不使用它是浪费屏幕空间.我知道我可以输入任何内容来显示特定的功能或属性,但我不介意只看到该功能.
我偶尔来到一个我不会改变数组内容的地方,但我需要在函数上多次知道它的计数.将数组的.count分配给变量并多次使用它是否更有效,或者编译器是否使效率等效?
我有两个BarChartDataSets。其中一个始终为3,另一个为2或3。我测试了3.0.0版中的代码,一切正常。当3.0.1发布时,它打破了我的图表。我总是具有正确的条数,但是当第二个数据集的大小仅为2时,我有6个标签,而不是5个。它与stringForValueDelegate函数无关。我X使用int 设置值,这些值与要在该索引处表示的Bar线性相关,因此,当正常工作时,每个bar均等距,但是当我有6个标签和5个bar时,它们均不均等。
左边的一个显示问题,右边的一个显示当我的BarChartDataSet大小为3时的样子。它正在复制图表上的最后一个值,并将其添加为左边的第6个标签。在3.0.0中,左侧的标签只有5个标签。
我挖成自己的代码,并在那里他们创建标签XAxisRendererHorizontalBarChart.swift
权利,他们打电话前drawLabel()
我叫print("xAxis entries: \(xAxis.entries.count)")
这打印xAxis entries: 6
到控制台,即使之前,我打电话let chartData = BarChartData(dataSets: [chartDataSet1, chartDataSet2])
我叫print("dataEntries1 count: \(dataEntries1.count),
dataEntries2 count: (dataEntries2.count)")
其打印dataEntries1 count: 3, dataEntries2 count: 2
React Native运行android说新目标SDK 22不支持运行时权限.旧的目标SDK 24可以,但你如何解决它?
错误的图像
我有一些代码会经常运行.就性能而言,以下与声明之间是否有任何区别,如果是,哪一个更快?
num = 4
Run Code Online (Sandbox Code Playgroud)
VS
if num != 4 {
num = 4
}
Run Code Online (Sandbox Code Playgroud)
我知道差异可能很小,但我偶尔也会想到这个问题.此外,我会对与此密切相关的问题感兴趣,这些问题可能使用Bool或String代替Int.
swift ×6
ios ×2
xcode ×2
android ×1
arrays ×1
autocomplete ×1
calayer ×1
charts ×1
closures ×1
cncontact ×1
count ×1
enumeration ×1
if-statement ×1
memory-leaks ×1
npm ×1
performance ×1
react-native ×1
reactjs ×1
shadow ×1
xcode9 ×1