如何在Swift中从UIAlertController中删除UIAlertAction?

nb0*_*b07 4 ios uialertcontroller

我知道您可以在UIAlertController中禁用UIAlertAction按钮,但是一旦添加按钮,是否可以将其完全删除?

nhg*_*rif 5

无法从UIAlertController添加的操作中删除操作。

actions属性可以返回添加的操作的数组,但是它是get唯一的,无法设置。

addAction(_:)方法添加了操作,但是没有相应的removeAction(_:)方法。

最终,从警报控制器中删除操作后,实际上并没有多大意义。通常,实例化后,通常应该重新使用警报控制器对象,因此解决方案是仅简单地仅在适当位置添加适当的操作。

  • 想要在添加警报后从警报控制器中删除操作是很有意义的。它与重复使用无关。它与呈现简洁的界面有关。例如,如果要显示一个警报控制器,该控制器用于为用户的头像选择照片,则可能要为该照片添加多个来源,并且还提供了一项操作以完全删除当前照片*如果已设置*。当然,您可以禁用删除操作,但是由于它并非始终是一个选项,因此为什么要首先将其呈现给用户? (7认同)