如何在我的视图控制器中向我的“全部删除”和“保存”按钮添加警报?

Posted

技术标签:

【中文标题】如何在我的视图控制器中向我的“全部删除”和“保存”按钮添加警报?【英文标题】:how to add an alert to my "delete all" and "save" button in my view controller? 【发布时间】:2020-09-23 15:26:03 【问题描述】:

我以编程方式在我的 viewController 中添加了按钮,我想在点击将显示警报的按钮时添加一个警报并删除我的 TableViewCell 中所有添加的项目。我怎样才能做到这一点?以及点击按钮时的保存按钮,将出现保存按钮的警报。 谢谢。

class IncallPantryCheckViewController 

let deleteAllButton: UIButton = 
        let button = UIButton()
        button.setTitle("Delete All", for: .normal)
        button.titleLabel!.font = UIFont(name: "HelveticaNeue-Bold", size: 20.0)!
        button.setTitleColor(UIColor.orange, for: UIControlState.normal)
        return button
    ()
  

 override func viewDidLoad() 
        super.viewDidLoad()
        
        inCallTableView.register(UINib(nibName: "PantryCheckInCallTableViewCell", bundle: Bundle.main), forCellReuseIdentifier: "PantryCheckInCallTableViewCell")
        
view.addSubview(deleteAllButton)
view.addSubview(saveButton)

deleteAllButton.translatesAutoresizingMaskIntoConstraints = false
deleteAllButton.bottomAnchor.constraint(equalTo: view.bottomAnchor, constant: -20).isActive = true
deleteAllButton.leftAnchor.constraint(equalTo: self.view.leftAnchor, constant: 45).isActive = true
        
saveButton.translatesAutoresizingMaskIntoConstraints = false
saveButton.bottomAnchor.constraint(equalTo: view.bottomAnchor, constant: -20).isActive = true
saveButton.rightAnchor.constraint(equalTo: self.view.rightAnchor, constant: -45).isActive = true
    



 

【问题讨论】:

你想弹出一个警报吗?基本上是一个弹出消息,例如“您确定要全部删除吗?”。 【参考方案1】:

我假设您要使用 ios 提供的警报:

    创建函数以显示删除警报并实际执行删除:

     @objc func tappedDelete() 
         let alertController = UIAlertController(title: "Alert", message: "Are you sure you want to delete?", preferredStyle: .alert)
         alertController.addAction(UIAlertAction(title: "YES", style: .destructive, handler:  _ in
             self.performDelete()
         ))
         alertController.addAction(UIAlertAction(title: "NO", style: .cancel, handler: nil))
    
         // present alert, pick one depending if you're using a navigation controller or not.
         //    self.navigationController?.present(alertController, animated: true, completion: nil)
         //    self.present(alertController, animated: true, completion: nil)
     
    
     func performDelete() 
         print("Do your delete logic here")
     
    

    为您的按钮添加目标操作:

     deleteAllButton.addTarget(self, action: #selector(tappedDelete), for: .touchUpInside)
    

为您的保存按钮重复上述操作。

【讨论】:

以上是关于如何在我的视图控制器中向我的“全部删除”和“保存”按钮添加警报?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 OnChangeText 中向我的组件 inputText 添加两个状态

如何防止 Visual Studio 2010 在 C++ 中向我的项目添加大型 SQL 文件?

我无法在我的 Vue 项目中向控制台提交任何数据

如何在 Mac Os X 中向我的可可应用程序的屏幕添加信息

当我将 AVCaptureVideoPreviewLayer 添加到我的 UIView 时,UIButton 消失

如何在 iOS 中以编程方式从基本 UIViewController 向我的所有视图控制器添加视图