【问题标题】:Adwhirl is Not working in the UIViewController ClassAdwhirl 在 UIViewController 类中不起作用
【发布时间】:2010-03-08 15:44:08
【问题描述】:

如果我在应用程序委托类中实现它,那么它工作正常。 但是在 Viewcontroller 类中每次都会崩溃。 我实现了 try-catch 然后它不会崩溃。但不工作。

谢谢 马诺吉

【问题讨论】:

    标签: iphone cocoa-touch debugging crash


    【解决方案1】:

    学习使用调试器。

    它会告诉你崩溃发生在哪里。然后,您可能会了解应该归咎于哪个对象或哪个方法。您的情况听起来像是内存管理问题,但从您的描述中无法判断。

    另外:try-catch 是一个在 Cocoa 中很少使用的概念。如果您来自 Java,您可能会认为它可以捕获所有错误,但在 Objective-C 中,很少有错误会引发异常。

    【讨论】:

    【解决方案2】:

    这是我的代码 如果我们注释行 [mainMenuView addSubview:adWhirlView];然后应用程序正常

    我的 .h 文件

    #import "AdWhirlDelegateProtocol.h"
    @interface Are_you_BoredViewController : UIViewController  <AdWhirlDelegate> {
        AdWhirlView *adWhirlView;]
    

    我的 .m 文件

    -(void)awakeFromNib{
        adWhirlView = [AdWhirlView requestAdWhirlViewWithDelegate:self];
    
    -(void)nextButtonEnable{
            [menuLoop stop];
            [splashActIndicator stopAnimating];
            [splashActIndicator setHidesWhenStopped:YES];
            [nextSplashBtn setHidden:NO];
            [self.view addSubview:mainMenuView];
            [mainMenuView addSubview:adWhirlView];
            [mainMenuView setFrame:CGRectMake(0.0, 0.0, 320.0, 480.0)];
    }
    

    【讨论】:

    • 您应该将其编辑到您的问题中,而不是将其作为问题的答案发布。
    【解决方案3】:
    -(void)awakeFromNib{
        adWhirlView = [AdWhirlView requestAdWhirlViewWithDelegate:self];
    

    由于您将此对象的指针分配给您的实例变量之一,您应该保留该对象。见the memory management rules

    另外,使用} 终止该方法。 ☺

    【讨论】:

      猜你喜欢
      • 2014-02-19
      • 2014-06-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-09-20
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多