2014-10-07 3 views
0

У меня есть следующий отчет о сбоях, связанный с UIAlertController, и он не может воспроизвести авария.Сбой для UIAlertController в iOS 8

*** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Trying to dismiss UIAlertController <UIAlertController: 0x7a740910> with unknown presenter.' 

Application Specific Backtrace 1: 
0 CoreFoundation      0x034dfdda ___exceptionPreprocess + 154 
1 libobjc.A.dylib      0x03169a97 _objc_exception_throw + 44 
2 CoreFoundation      0x034dfd1d +[NSException raise:format:] + 141 
3 UIKit        0x02268999 -[UIAlertController _dismissAnimated:triggeringAction:triggeredByPopoverDimmingView:] + 444 
4 UIKit        0x022687d8 -[UIAlertController _dismissAnimated:triggeringAction:] + 56 
5 UIKit        0x022683c4 -[UIAlertController _actionViewTapped:] + 68 
6 libobjc.A.dylib      0x0317f771 -[NSObject performSelector:withObject:] + 70 
7 UIKit        0x0244b06c -[_UIAlertControllerActionView _triggerSelect] + 60 
8 UIKit        0x0244af27 -[_UIAlertControllerActionView touchesEnded:withEvent:] + 187 
9 UIKit        0x023eb257 __UIGestureRecognizerUpdate + 13225 
10 UIKit        0x0200471b -[UIWindow _sendGesturesForEvent:] + 1356 
11 UIKit        0x0200557f -[UIWindow sendEvent:] + 769 
12 UIKit        0x01fcaaa9 -[UIApplication sendEvent:] + 242 
13 UIKit        0x01fda8de __UIApplicationHandleEventFromQueueEvent + 20690 
14 UIKit        0x01faf079 __UIApplicationHandleEventQueue + 2206 
15 CoreFoundation      0x034037bf ___CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 15 
16 CoreFoundation      0x033f92cd ___CFRunLoopDoSources0 + 253 
17 CoreFoundation      0x033f8828 ___CFRunLoopRun + 952 
18 CoreFoundation      0x033f81ab _CFRunLoopRunSpecific + 443 
19 CoreFoundation      0x033f7fdb _CFRunLoopRunInMode + 123 
20 GraphicsServices     0x0564c24f _GSEventRunModal + 192 
21 GraphicsServices     0x0564c08c _GSEventRun + 104 
22 UIKit        0x01fb2e16 _UIApplicationMain + 1526 
23 FantasyCricket      0x001435ad _main + 141 
24 libdyld.dylib      0x04055ac9 _start + 1 

Я использую AlertController для iOS 8 и более поздних версий.

Edit:

Пример код для отображения предупреждения:

if (NSClassFromString(@"UIAlertController")) 
{ 
    UIAlertController *alert = [UIAlertController alertControllerWithTitle:title 
                    message:msg 
                  preferredStyle:UIAlertControllerStyleAlert]; 

    UIAlertAction* defaultAction = [UIAlertAction actionWithTitle:@"OK" 
                  style:UIAlertActionStyleDefault 
                  handler:nil]; 

    [alert addAction:defaultAction]; 

    //other UIAlertAction here...... 

    [self presentViewController:alert animated:YES completion:nil]; 
} 
else 
{ 
    [[[UIAlertView alloc]initWithTitle:title 
           message:msg 
           delegate:nil 
        cancelButtonTitle:@"OK" 
        otherButtonTitles:nil] show]; 
} 

Использования также в AppDelegate (путем получения текущего контроллера и представление уведомления на этом контроллере) также, может эта причина проблема ..?

+0

Вы можете вставить свой код здесь. – Ricky

+0

Я использую alert во многих местах приложения. – Pushparaj

+0

, но вы можете использовать точку останова, чтобы найти строку в коде, где ваше приложение разбилось. Таким образом, нам будет легко помочь вам тогда. – Ricky

ответ

0

Это может решить вашу проблему, так как есть ошибка в ios 8 с UIAlertController. Посмотрите this link, может быть вам полезна.

Смежные вопросы