菜鸟教程小白 发表于 2022-12-12 12:35:31

ios - 按下按钮时出现 KLCPopup 错误


                                            <p><p>与 <strong> <a href="https://github.com/jmascia/KLCPopup" rel="noreferrer noopener nofollow">KLCPopup library</a> </strong> 当我按下 KLCPopup 容器中包含的 View 按钮之一时,我总是(随机)出现以下错误之一:</p>

<ol>
<li><code>NSInvalidArgumentException',原因:'-</code></li>
<li>(大多数时候)<code>bad_access_exc code=1</code></li>
</ol>

<p><strong>这是我在 « FindViewController » 中调用 KLCPopup 的代码</strong> </p>

<pre><code>AddFeelingViewController *adf = ;
adf.userTo = ;
adf.controller = self;
adf.view.frame = CGRectMake(0.0, 0.0, 300.0, 250.0);

KLCPopup *popup = showType:KLCPopupShowTypeBounceIn dismissType:KLCPopupDismissTypeBounceOut maskType:KLCPopupMaskTypeDimmed dismissOnBackgroundTouch:YES dismissOnContentTouch:NO];

;
</code></pre>

<p><strong>这里是我的 « AddFeelingViewController » 中的代码:</strong></p>

<pre><code>   - (void)viewDidLoad {

      super viewDidLoad];
      score = 0;

    if(]){            
       _controller = (FindViewController*)_controller;   
    }else{
       _controller = (HomeViewController*)_controller;

    }

    - (IBAction)sendPlus:(id)sender {
       score = 1;
    }
    - (IBAction)sendMinus:(id)sender {   
      score = -1;
    }
    - (IBAction)sendFeeling:(id)sender {

      if(]){
             if(score !=0 ){
               ;
             }

      }else{
             //TODO
      }
   }
</code></pre>

<p> Storyboard 中的所有内容都链接得很好,只有在链接按钮时才会崩溃。</p>

<p>你有什么想法吗?</p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>我遇到了与您的 n°2 完全相同的错误。
发生这种情况是因为一旦执行 <code>FindViewController</code> 中的代码,您的 <code>AddFeelingViewController</code> 就会自动释放。</p>

<p>您的 <code>AddFeelingViewController</code> 仅在当前范围内(在方法的主体中)声明,因此一旦方法完成执行,ARC 就会释放它。</p>

<p>要解决这个问题,只需将您的 <code>AddFeelingViewController</code> 声明为 <code>FindViewController</code> 的类变量。</p>

<p>在 <code>FindViewController.m</code> 中:</p>

<pre><code>AddFeelingViewController *myAdfController;

@implementation FindViewController

-(void)displayMyAdf{
    myAdfController = ;
    myAdfController.userTo = ;
    myAdfController.controller = self;
    myAdfController.view.frame = CGRectMake(0.0, 0.0, 300.0, 250.0);

    KLCPopup *popup = showType:KLCPopupShowTypeBounceIn dismissType:KLCPopupDismissTypeBounceOut maskType:KLCPopupMaskTypeDimmed dismissOnBackgroundTouch:YES dismissOnContentTouch:NO];

    ;
}
</code></pre></p>
                                   
                                                <p style="font-size: 20px;">关于ios - 按下按钮时出现 KLCPopup 错误,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/26841410/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/26841410/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - 按下按钮时出现 KLCPopup 错误