CALayerInvalidGeometry exception while playing HTML5 video

After upgrading to iOS 4.2 SDK, I get the following exception in my application:

Terminating app due to uncaught exception 'CALayerInvalidGeometry', reason: 'CALayer position contains NaN: [nan 22]'

(See below for a copy of the call stack)

More details:

'- UIWebViewwith the video tag located insideUIScrollView

'- The video can be played inside UIWebView, but when you try to zoom in and use the decrease or end button from the player, the application crashes with the indicated exception. This does not happen on SDK 3.2

*** Call stack at first throw:
(
 0   CoreFoundation                      0x01150be9 __exceptionPreprocess + 185
 1   libobjc.A.dylib                     0x012a55c2 objc_exception_throw + 47
 2   CoreFoundation                      0x01109628 +[NSException raise:format:arguments:] + 136
 3   CoreFoundation                      0x0110959a +[NSException raise:format:] + 58
 4   QuartzCore                          0x0200996a _ZL18CALayerSetPositionP7CALayerRKN2CA4Vec2IdEEb + 177
 5   QuartzCore                          0x020098b5 -[CALayer setPosition:] + 42
 6   QuartzCore                          0x020097cc -[CALayer setFrame:] + 763
 7   UIKit                               0x0030d307 -[UIView(Geometry) setFrame:] + 255
 8   UIKit                               0x003e6add -[UISlider setFrame:] + 166
 9   MediaPlayer                         0x00f0faee -[MPDetailSlider setFrame:] + 78
 10  MediaPlayer                         0x00f267b7 -[MPWildcatFullScreenVideoOverlay layoutSubviews] + 1280
 11  QuartzCore                          0x0200e451 -[CALayer layoutSublayers] + 181
 12  QuartzCore                          0x0200e17c CALayerLayoutIfNeeded + 220
 13  QuartzCore                          0x0200737c _ZN2CA7Context18commit_transactionEPNS_11TransactionE + 310
 14  QuartzCore                          0x020070d0 _ZN2CA11Transaction6commitEv + 292
 15  QuartzCore                          0x020377d5 _ZN2CA11Transaction17observer_callbackEP19__CFRunLoopObservermPv + 99
 16  CoreFoundation                      0x01131fbb __CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION__ + 27
 17  CoreFoundation                      0x010c70e7 __CFRunLoopDoObservers + 295
 18  CoreFoundation                      0x0108fbd7 __CFRunLoopRun + 1575
 19  CoreFoundation                      0x0108f240 CFRunLoopRunSpecific + 208
 20  CoreFoundation                      0x0108f161 CFRunLoopRunInMode + 97
 21  GraphicsServices                    0x01a85268 GSEventRunModal + 217
 22  GraphicsServices                    0x01a8532d GSEventRun + 115
 23  UIKit                               0x002e642e UIApplicationMain + 1160
 24  ecom                                0x000022c0 main + 102
 25  ecom                                0x00002251 start + 53
)
terminate called after throwing an instance of 'NSException'
+5
source share
4 answers

Since iOS 4.2, there seems to be a problem with frame size calculations for the slider inside MoviePlayer.

​​ 143.0 235.0, .

+6

UIScrollView. iOS:

: UIWebView UITableView UIScrollView. , .

UITextView, scrollView. .

+1

, UIScrollView. : "initWithFrame" "init" . .

- "initWithFrame" . iPhone 4 iOS 4.2. iPhone 4 iOS 4.1 iPad iOS 4.2.

0

4.2 Xcode 4.2.5 ( - 4.2-) CAGradientLayer , ,

,

Try-Catch, expcetion, , .

0

All Articles