Swi*_*ect 5 xamarin.ios xamarin
我在Xamarin Studio中有这个静态源分析警告:
API使用问题:使用带有
UICompletion Handler completion参数的*Notify方法,bool将告诉您操作是否已完成
在调用时UIView.Animate(double duration, Action animation, Action completion):
UIView.Animate(duration,
() => Animation(),
() => Completion());
Run Code Online (Sandbox Code Playgroud)
但是,我似乎无法将参数传递给lambda表达式.这些选项都没有编译:
(bool) => Completion()(finished) => Completion()(bool finished) => Completion()如何将此finished参数传递给完成块?
Sus*_*ver 12
在Animate静态方法使用NSAction方法更多的是C#风格的注解和,AnimateNotify使用UICompletionHandler方法,ObjC风格...
这些Animate方法只是辅助包装器AnimateNotify:
所以代替:
UIView.Animate(30, () => { }, () => { });
Run Code Online (Sandbox Code Playgroud)
您可以使用:
UIView.AnimateNotify(30, () => { }, (bool finished) => { });
Run Code Online (Sandbox Code Playgroud)
结果是一样的....
参考:https://github.com/xamarin/xamarin-macios/blob/fc55e4306f79491fd269ca2495c6a859799cb1c6/src/UIKit/UIView.cs#L121
| 归档时间: |
|
| 查看次数: |
489 次 |
| 最近记录: |