accidente Xcode 11 Xib _UITextLayoutView

información de bloqueo es el siguiente:

*** Terminación de aplicación debido a excepción no detectada 
'NSInvalidUnarchiveOperationException', 
razón: 'No se pudo clase instantiate llamado _UITextLayoutView porque no se encontró ninguna clase llamada _UITextLayoutView; 
las necesidades de la clase que se definirán en código fuente o ligados en partir de una biblioteca (aseguran la clase es parte de la diana correcta)'

 

 

Una solución

xib vista parcial del interruptor para escritura a mano núcleo duro, a fin de evitar la fosa.
solución de dos

Descargar otras versiones de Xcode portal
soluciones tres

OC magia negro en tiempo de ejecución.

    Crear un archivo UITextViewWorkaround

    UITextViewWorkaround.h

    import </ Fundación Foundation.h>
     
    @interface UITextViewWorkaround: NSObject
    + (void) executeWorkaround; 
    @fin
     

    UITextViewWorkaround.m

    import "UITextViewWorkaround.h"
    import <objc / runtime.h>
     
     
     
    @implementation UITextViewWorkaround
     
    + (void) executeWorkaround {
        si (@available (IOS 13.2, *)) {
     
        }
        else {
            const char * className = "_UITextLayoutView";
            Cls class = objc_getClass (className);
            si (cls == nil) {
                cls = objc_allocateClassPair ([clase UIView], className, 0);
                objc_registerClassPair (CLS);
    #if DEBUG
                printf ( "añadido% s dinámicamente \ n", className);
    #endif
            }
        }
    }
     
    @end

    Utilice el método estático

    import "UITextViewWorkaround.h"
     
    - (BOOL) aplicación: (*) UIApplication didFinishLaunchingWithOptions de aplicación: (*) NSDictionary launchOptions {
        // punto de anulación para la personalización después del lanzamiento de la aplicación.
     
        [UITextViewWorkaround executeWorkaround];
        volver sí;
    }

    Por favor, acepte rápida liberación objetivo:

    importación UIKit
     
    @objc
    UITextViewWorkaround clase: NSObject {
     
        estática func executeWorkaround () {
            si #available (IOS 13.2, *) {
            } else {
                dejó className = "_UITextLayoutView"
                dejar que theClass = objc_getClass (className)
                si theClass == nil {
                    dejar que classPair: ¿Cualquier clase? = Objc_allocateClassPair (UIView.self, className, 0)
                    objc_registerClassPair (classPair!)
                }
            }
        }
     
    }

Publicado 49 artículos originales · ganado elogios 7 · Vistas a 30000 +

Supongo que te gusta

Origin blog.csdn.net/qq_29680975/article/details/103579986
Recomendado
Clasificación