iOS14适配:Xcode12+weex图片不显示问题

WXLayer文件修改以下代码即可:
- (void)display
{
    if(@available(iOS 14.0, *)) {
        [super display];
    }
    [self.wx_component _willDisplayLayer:self];
}
image.png

PS:我是暂时直接改的pod文件测试,建议不要这么改,可以写个category交换方法更好吧。

话说我新建了一个category这个报错是为啥呢?怎么解决?

image.png

Embedded添加WeexSDK库即可。

新建category;

.h文件

//
//  WXLayer+Extension.h
//  HaiDiLao
//
//  Created by 彭思 on 2020/11/23.
//  Copyright © 2020 haidilao. All rights reserved.
//

#import "WXLayer.h"
#import "WXDefine.h"
#import "WXComponent.h"
#import "WXComponent_internal.h"

NS_ASSUME_NONNULL_BEGIN

@interface WXLayer (Extension)

@end

NS_ASSUME_NONNULL_END

.m文件:

//
//  WXLayer+Extension.m
//  HaiDiLao
//
//  Created by 彭思 on 2020/11/23.
//  Copyright © 2020 haidilao. All rights reserved.
//

#import "WXLayer+Extension.h"
#import 

@implementation WXLayer (Extension)

+(void)load{

    /** 获取原始setBackgroundColor方法 */
    Method originalM = class_getInstanceMethod([self class], @selector(display));
    
    /** 获取自定义的pb_setBackgroundColor方法 */
    Method exchangeM = class_getInstanceMethod([self class], @selector(newDishplay));
    
    /** 交换方法 */
    method_exchangeImplementations(originalM, exchangeM);
}

/** 自定义的方法 */
-(void)newDishplay{
    if(@available(iOS 14.0, *)) {
        [super display];
    }
    [self.wx_component _willDisplayLayer:self];
}

@end

你可能感兴趣的:(iOS14适配:Xcode12+weex图片不显示问题)