ios WebView引起的问题

异常情况:

*** Terminating app due to uncaught exception 'CALayerInvalidGeometry', reason: 'CALayer position contains NaN: [240 nan]'
*** First throw call stack:
(0x325e02a3 0x3a30897f 0x325e01c5 0x3419497b 0x341948a3 0x6f3c69 0x34194833 0x343e9aed 0x3446e1cd 0x3449eb41 0x344a6189 0x344724c9 0x343eb803 0x34195d8b 0x34195929 0x3419685d 0x34196243 0x34196051 0x34195eb1 0x325b56cd 0x325b39c1 0x325b3d17 0x32526ebd 0x32526d49 0x360ff2eb 0x3443c301 0xd74b3 0xd7468)
libc++abi.dylib: terminate called throwing an exception


今天测试一个程序的时候发现的问题。先检查了一下代码,并没有发现什么明显的问题,后来在网上仔细查了下类似问题。发现引起nan问题主要有3个原因,这种错误是在float经过函数运行出了不是数字的值,nan的意思就是not a number。
主要常见原因:
1.除以0
2.sizeWithFont的字符串为nil
3.数学函数不正确运算

但是又检查了一下代码,根本没有用到什么函数运算,最后又看到一篇文章里说是在创建webView的时候没有设置frame,但是我的是设置了的,但是我是在viewDidLoad里创建的,并没有设置frame,在viewDidAppear里才设置的frame,后来改了下,在viewDidLoad里创建的时候就设置frame,试了一下,就OK了。

猜你喜欢

转载自wsanranbr.iteye.com/blog/1972207