Xamarin Mac - SIGSEGV
问题描述:
有时我在执行我的代码时遇到未知的SIGSEGV错误。Xamarin Mac - SIGSEGV
Stacktrace可以被找到here。 在扩展堆栈视图内的视图时总是发生异常。
NSAnimationContext.RunAnimation(ctx =>
{
ctx.TimingFunction = CAMediaTimingFunction.FromName(CAMediaTimingFunction.EaseOut);
//((NSView)View.Animator).AlphaValue = !IsSmall ? 0 : 1;
((NSLayoutConstraint)heightConstraint.Animator).Constant = (IsSmall == true) ? SmallHeight : LargeHeight;
}, null);
如果我不用动画展开视图,也没有区别。
我无法找出这里发生了什么,所以希望有人能帮助我
提前感谢!
编辑
难道这是因为垃圾收集器释放了这个视图吗?我发现的观点也无法点击和上面说的,点击该按钮将引发SIGSEGV
答
解决方案
的解决方案似乎很容易。我没有将视图存储在任何导致垃圾收集器收集这些垃圾的变量中。现在我添加了一个列表,它将充满意见和瞧:它工作正常
'也没有扩大与动画不会影响错误。你的陈述困惑,你的意思是如果你不使用'NSAnimationContext.RunAnimation'你仍然会得到同样的错误?由于它似乎是'sendAction:to:from:(UI线程)的错误,请验证您的约束值是否有效。 – SushiHangover
如何检查约束?展开的视图会多次加载到堆栈视图中,其中一些会按预期方式展开,但其中一些会抛出上述错误。此外,这并不总是发生在同一个,它是完全随机的 –
您的链接到堆栈跟踪不起作用 - “您指定了一个片段ID或链接是无效的,无法显示。请使用最近的片段或我的片段按钮来查找有效的片段。“ –