小编Leg*_*tik的帖子

是否可以隐藏NFC阅读会话的iOS系统警报

当您成功完成NFC阅读课程后,您会看到类似的内容:

成功完成了NFC会话

这将覆盖当前呈现ViewController的约3秒.有趣的是,这种行为是不一致的,因为如果阅读会话结束得非常快,这个窗口会立即消失.

这意味着我无法确定这个叠加层能保持多长时间,这对我们的应用程序的UX设计有害.

问题很简单:有没有办法强制这个叠加层消失或至少处理它何时消失的事件(不是当NFC 会话结束时)?

nfc ios core-nfc

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

当我们不应该既不使用[弱自我]也不使用[无主自我]?

我已经阅读了关于何时应该使用[weak self] [unowned self]在闭包中的StackOverflow的几个讨论.

但是,是否有任何情况下,当我们没有使用没有他们,因为当我们只是明确使用斯威夫特不显示任何错误或警告self封闭内.

例如,我们应该使用weak还是unowned在这里?

UIView.animate(withDuration: 0.3) {
    self.view.alpha = 0.0
}
Run Code Online (Sandbox Code Playgroud)

automatic-ref-counting swift

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

如何在Pycharm中更改特定文件中的选项卡大小

我知道我可以使用设置 - > 代码样式 - > Python - > 标签大小来更改标签大小

但是,如果给我一个标签大小为2的文件并希望将其更改为4,那该怎么办呢?有快速的方法吗?

python pycharm

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

"三博纳奇"序列

我们有一个前3个元素的序列: t_1 = t_2 = t_3 = 1

序列的其余部分由规则定义:( t_n = t_(n-1) + t_(n-2) + t_(n-3)与Fibonacci序列相似,但对于3个数字).

t = {1; 1; 1; 3; 5; 9; 17; 31; ...}
Run Code Online (Sandbox Code Playgroud)

任务是找到第N个奇数,它不是序列中任何元素的分隔符.

Input: N (1 <= N <= 10^4 )

Output: N-th number which satisfies the condition.
Run Code Online (Sandbox Code Playgroud)

例:

Input: 125

Output: 2025
Run Code Online (Sandbox Code Playgroud)

我的直接解决方案效果太慢了.如何在给定限制(N <= 10 ^ 4)的情况下,如何改进/更改算法以在1秒内完成工作?

t = [1, 1, 1]
N = int(input())  # find N-th odd number which isn't a divider of any number in the sequence
counter = 0 …
Run Code Online (Sandbox Code Playgroud)

python algorithm sequence fibonacci

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

在UICollectionViewController中只选择一个项目

我已经实现了一个UICollectionViewController的子类,它可以水平滚动,我希望它能够只选择一个项目.

当我在当前屏幕上更改所选项目时,它工作正常.但是,例如,如果我在集合的最开头选择一个项目,然后向右滚动并选择另一个项目,则仍将选择第一个项目.

这是我的CollectionView的当前版本:

class GenresCollectionVC: UICollectionViewController {

    var selectedIndexPath: IndexPath?

    // MARK: UICollectionViewDataSource
    override func numberOfSections(in collectionView: UICollectionView) -> Int {
        return 1
    }

    override func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
        return MockData.instance.genres.count
    }

    override func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
        let cell = collectionView.dequeueReusableCell(
            withReuseIdentifier: reuseIdentifier, for: indexPath) as! GenreCollectionViewCell

        cell.genreNameLabel.text = MockData.instance.genres[indexPath.row]
        if selectedIndexPath == indexPath {
            redraw(selectedCell: cell)
        } else {
            redraw(deselectedCell: cell)
        }

        return cell
    }

    // MARK: …
Run Code Online (Sandbox Code Playgroud)

ios uicollectionview swift

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

主队列上异步任务的执行顺序

在下面的代码中,print语句按它们包含的数字的顺序执行(1,2,3等)

override func viewDidLoad() {
    super.viewDidLoad()

    DispatchQueue.main.async {
        print("4")
    }

    print("1")
}

override func viewWillAppear(_ animated: Bool) {
    super.viewWillAppear(animated)

    DispatchQueue.main.async {
        print("5")
    }

    print("2")
}

override func viewDidAppear(_ animated: Bool) {
    super.viewDidAppear(animated)

    DispatchQueue.main.async {
        print("6")
    }

    print("3")
}
Run Code Online (Sandbox Code Playgroud)

你能解释为什么执行过程会这样发生吗?是viewWillAppearviewWillAppear方法已经在队列中,当我们派遣异步块中viewDidLoad

grand-central-dispatch ios swift

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

如何为Apple Wallet创建折扣卡?

如何使用 Apple Wallet 和 iOS API 为咖啡店创建(是否可能)折扣卡?

我想要得到的效果如下:iOS 用户应该在 Apple Wallet 中拥有一张个人卡,他们会带着它去咖啡店。咖啡店里会有一个扫描仪,它可以为每次扫描添加分数,并在分数达到 7 次扫描时取消分数(这样用户将免费获得第 7 杯咖啡)。

ios applepay wallet

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