[_UILabelLayer isHidden]:发送到已释放实例的消息

Teja Nandamuri

我有一个UILabel和一个复选框按钮。选中复选框按钮时,显示uilabel,否则显示该标签5秒钟并隐藏该标签。当我转到其他视图并返回到该视图时,我的应用程序崩溃了,并说“ [_UILabelLayer isHidden]:已发送给已取消分配的消息实例 ”

   NSString *display = [NSString stringWithFormat:@"Scanned!\n\nFormat: %@\n\nContents:\n%@", formatString, result.text];

if(checkbox==NO){

   [self hideLabel:display];

  }

 //method to hide the label for 5 seconds

- (void)hideLabel:(NSString*)text{

self.decodedLabel.hidden=NO;
[self performSelector:@selector(hideLabel) withObject:nil afterDelay:5];//3sec

 }


 -(void)hideLabel{

 self.decodedLabel.hidden= YES;   //app crashed at this point

 }

谁能告诉我为什么这崩溃了?

我就是我
[self performSelector:@selector(hideLabel) withObject:nil afterDelay:5]; 

造成问题。根据我的理解,您正在弹出视图控制器,然后又回到它。弹出控制器时,将清除并释放所有关联的视图。现在,在您的情况下,这会在5秒的时间范围内发生。因此,当计时器命中时,它找不到该标签(已被释放)。

因此,您可以使用nstimer并在屏幕消失后立即使它无效,并在下次出现屏幕时根据对勾标记状态隐藏/取消隐藏标签。

请让我知道这可不可以帮你。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

消息已发送到已释放实例ARC

来自分类Dev

iPhone消息已发送到已释放实例

来自分类Dev

[CFNumber版本]:消息发送到已释放实例

来自分类Dev

[UINavigationController保留]:发送到已释放实例的消息

来自分类Dev

iPhone numberOfSectionsInTableView消息发送到已释放实例

来自分类Dev

UITextField textInputView消息发送到已释放实例

来自分类Dev

发送到已释放实例iOS [_UILayoutGuide isDescendantOfView:]的消息:

来自分类Dev

[CFString版本]:消息发送到已释放实例

来自分类Dev

[CALayer isKindOfClass:]:消息发送到已释放实例

来自分类Dev

发送到已释放实例iOS [_UILayoutGuide isDescendantOfView:]的消息:

来自分类Dev

[UIImageAsset保留]:发送到已释放实例的消息

来自分类Dev

消息已发送到iCarousel内部UIButton上的已释放实例

来自分类Dev

消息已发送到iCarousel内部UIButton上的已释放实例

来自分类Dev

Swift:[MyApp.MyClass保留]:消息发送到已释放实例

来自分类Dev

iOS 10 [CFString版本]:消息发送到已释放实例

来自分类Dev

发送到已释放实例的searchDisplayController消息(仅在iOS7中)

来自分类Dev

iOS:[CFRunLoopTimer版本]:消息发送到已释放实例错误调试

来自分类Dev

转换为ARC后,我收到“发送到已释放实例的消息”

来自分类Dev

[__NSArrayI objectAtIndex:]:消息发送到已释放实例0x7fbdae1a2080

来自分类Dev

收到错误“-[NSThread threadDictionary]:消息发送到已释放实例”

来自分类Dev

NSArray countByEnumeratingWithState发送到已释放实例

来自分类Dev

使用自定义getter和setter将消息发送到带有ARC的已释放实例的消息

来自分类Dev

iOS 8:-[UIInputViewSet setRestorableResponder:]:消息发送到已释放实例0x7d6659b0

来自分类Dev

iOS 8:-[UIInputViewSet setRestorableResponder:]:消息发送到已释放实例0x7d6659b0

来自分类Dev

UITableView中崩溃,将消息发送到已释放的UIViewController

来自分类Dev

已将Objective-C消息发送到已释放的“ UIActivityIndicatorView”对象

来自分类Dev

iOS内存警告发送到已释放的UIViewController

来自分类Dev

将消息发送到Azure网站实例

来自分类Dev

将Firebase Cloud消息发送到已关闭的应用程序不起作用

Related 相关文章

  1. 1

    消息已发送到已释放实例ARC

  2. 2

    iPhone消息已发送到已释放实例

  3. 3

    [CFNumber版本]:消息发送到已释放实例

  4. 4

    [UINavigationController保留]:发送到已释放实例的消息

  5. 5

    iPhone numberOfSectionsInTableView消息发送到已释放实例

  6. 6

    UITextField textInputView消息发送到已释放实例

  7. 7

    发送到已释放实例iOS [_UILayoutGuide isDescendantOfView:]的消息:

  8. 8

    [CFString版本]:消息发送到已释放实例

  9. 9

    [CALayer isKindOfClass:]:消息发送到已释放实例

  10. 10

    发送到已释放实例iOS [_UILayoutGuide isDescendantOfView:]的消息:

  11. 11

    [UIImageAsset保留]:发送到已释放实例的消息

  12. 12

    消息已发送到iCarousel内部UIButton上的已释放实例

  13. 13

    消息已发送到iCarousel内部UIButton上的已释放实例

  14. 14

    Swift:[MyApp.MyClass保留]:消息发送到已释放实例

  15. 15

    iOS 10 [CFString版本]:消息发送到已释放实例

  16. 16

    发送到已释放实例的searchDisplayController消息(仅在iOS7中)

  17. 17

    iOS:[CFRunLoopTimer版本]:消息发送到已释放实例错误调试

  18. 18

    转换为ARC后,我收到“发送到已释放实例的消息”

  19. 19

    [__NSArrayI objectAtIndex:]:消息发送到已释放实例0x7fbdae1a2080

  20. 20

    收到错误“-[NSThread threadDictionary]:消息发送到已释放实例”

  21. 21

    NSArray countByEnumeratingWithState发送到已释放实例

  22. 22

    使用自定义getter和setter将消息发送到带有ARC的已释放实例的消息

  23. 23

    iOS 8:-[UIInputViewSet setRestorableResponder:]:消息发送到已释放实例0x7d6659b0

  24. 24

    iOS 8:-[UIInputViewSet setRestorableResponder:]:消息发送到已释放实例0x7d6659b0

  25. 25

    UITableView中崩溃,将消息发送到已释放的UIViewController

  26. 26

    已将Objective-C消息发送到已释放的“ UIActivityIndicatorView”对象

  27. 27

    iOS内存警告发送到已释放的UIViewController

  28. 28

    将消息发送到Azure网站实例

  29. 29

    将Firebase Cloud消息发送到已关闭的应用程序不起作用

热门标签

归档