登录

swift - iOS ActionSheet Delegate 冲突的问题

在我的App中有很多地方用到了ActionSheet,最近发布了一个版本,由于测试忘记测相机了,导致上线后发现一个bug,相机的ActionSheet占据了第一和第一的位置,结果当别的地方点击actionsheet前两个的时候都会跳转到相机或者是相册,请问大家怎么解决这个问题呢?

# iOS
阿神阿神2171 天前612 次浏览

全部回复(2) 我要回复

  • 大家讲道理

    大家讲道理2017-04-17 13:39:35

    delegate 函数有actionSheet本身这个参数呀。

    - (void)actionSheet:(UIActionSheet *)actionSheet clickedButtonAtIndex:(NSInteger)buttonIndex;
    

    可以用来判断是哪个actionSheet

    至于怎么区分,创建 actionSheet 的时候可以加 tag;其次还可以把 actionSheet 存起来,在 delegate 函数里判if (actionSheet == self.actionSheet1)这样。不过 actionSheet 可能会 retain delegate,保存的时候用弱引用比较好……

    回复
    0
  • ringa_lee

    ringa_lee2017-04-17 13:39:35

    可以用Block写一个同步的ActionSheet,代码也看着直观。

    回复
    0
  • 取消回复发送