从 Tispr 卡片堆栈中删除卡片

Posted

技术标签:

【中文标题】从 Tispr 卡片堆栈中删除卡片【英文标题】:Delete card from Tispr card stack 【发布时间】:2017-07-04 13:01:51 【问题描述】:

我想用Thispr Card 做一个删除功能。你能指导我如何做到这一点。从堆栈中删除对象后,我确实重新加载了视图,但它对我来说崩溃了。

在我转到下一个视图并执行删除操作之后。然后当回来我的堆栈应该被刷新。在 viewdidappear() 我这样做了

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



    if(dm.cardshouldRefresh || isFirsttimeLoad)
    

        com.showProgress()

        self.getAuthorizations()  (status) in

            self.dm.cardshouldRefresh=false
            self.isFirsttimeLoad=false
            self.com.removeProgress()
            if (status)
            
                self.setupCardView()

            

        
    

    else
    
        print(arrayAuthorization)

    





func makecollectionViewEmpty()

    arrayAuthorization.removeAll()
    vwBtnPanelBottom.removeFromSuperview()
    self.collectionView?.reloadData()

但是一旦我在加载后尝试滑动,​​这就会崩溃。 请帮我。 谢谢

【问题讨论】:

【参考方案1】:

TisprCardStackExample项目中添加以下方法,您将获得remove方法。

TisprCardStackDemoViewController.swift

//method to remove card
@IBAction func addNewCards(_ sender: AnyObject) 
    countOfCards -= 1
    if(countOfCards >= 0)
        cardWasRemoved()
    

TisprCardStackViewController.swift

open func cardWasRemoved() 
    if layout.newCardShouldAppearOnTheBottom 
        layout.cardDidRemoved(0)
     else 
        layout.cardDidRemoved(numberOfCards() - 1)
    

TisprCardStackViewLayout.swift

func cardDidRemoved(_ newCardIndex:Int)         
    collectionView?.performBatchUpdates( [weak self] _ in
        self?.collectionView?.deleteItems(at: [IndexPath(item: newCardIndex, section: 0)])
        , completion:  _ in
    )

【讨论】:

非常感谢。但需要一点澄清。 layout.cardDidRemoved(0) 这个 0 是什么?我需要传递要删除的汽车的索引吗?

以上是关于从 Tispr 卡片堆栈中删除卡片的主要内容,如果未能解决你的问题,请参考以下文章

Roblox:从 ​​Trello 编辑/删除卡片

UIView 和 StackView 删除元素,Swift

如何删除 ListView 中卡片之间的空格?

如何在颤动中删除卡片的内部填充?

无法删除动态创建的卡片的父 div

从 ImageCardView 中删除背景