YYText iOS17兼容问题

这篇具有很好参考价值的文章主要介绍了YYText iOS17兼容问题。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

使用YYText ,1.0.7在iOS17会遇到如下崩溃
ios17 yytext,ios
主要原因是UIGraphicsBeginImageContext中的asert引发,而改接口早就标记为API_TO_BE_DEPRECATED,建议使用UIGraphicsImageRenderer替换。
由于YYText早已没有维护,于是fork了一个自己的git进行修正,主要修正逻辑在textAsynLayer

ios17 yytext,ios
替换为

            UIGraphicsImageRenderer *renderer = [[UIGraphicsImageRenderer alloc] initWithSize:size];
            UIImage *image = [renderer imageWithActions:^(UIGraphicsImageRendererContext * _Nonnull context) {
                if (opaque) {
                    CGContextSaveGState(context.CGContext); {
                        if (!backgroundColor || CGColorGetAlpha(backgroundColor) < 1) {
                            CGContextSetFillColorWithColor(context.CGContext, [UIColor whiteColor].CGColor);
                            CGContextAddRect(context.CGContext, CGRectMake(0, 0, size.width * scale, size.height * scale));
                            CGContextFillPath(context.CGContext);
                        }
                        if (backgroundColor) {
                            CGContextSetFillColorWithColor(context.CGContext, backgroundColor);
                            CGContextAddRect(context.CGContext, CGRectMake(0, 0, size.width * scale, size.height * scale));
                            CGContextFillPath(context.CGContext);
                        }
                    } CGContextRestoreGState(context.CGContext);
                    CGColorRelease(backgroundColor);
                }
                task.display(context.CGContext, size, isCancelled);
                if (isCancelled()) {
                    dispatch_async(dispatch_get_main_queue(), ^{
                        if (task.didDisplay) task.didDisplay(self, NO);
                    });
                    return;
                }
            }];

github地址

具体可参见git@github.com:iamanthonyzhu/YYTextAsynLayer.git文章来源地址https://www.toymoban.com/news/detail-772233.html

到了这里,关于YYText iOS17兼容问题的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【H5】H5安卓、ios兼容性问题

    H5在安卓机型和IOS机型或者相同机型的不同浏览器中的某些样式会存在不一样的表现,所以需要解决相应的兼容性问题 1、IOS端兼容input光标高度 问题症状:input输入框光标,在安卓手机上显示没有问题,但是在苹果手机上当点击输入的时候,光标的高度和父盒子的高度一样

    2024年02月16日
    浏览(42)
  • element ui ios移动端 表单兼容问题

    element ui 的表单在禁用状态时,在android手机显示无与pc显示一样,但是在ios显示却天差地别,基本看不到input    placeholder   属性添加的默认提示信息。效果图如下: 在ios显示:  在android手机: 怎么改css都没用,后面查了一些资料,才找到问题所在: 移动端环境下android只需

    2024年02月04日
    浏览(32)
  • 前端vue/uniapp —— 兼容ios与安卓问题

    ① css样式无效:安卓可,ios不可 ② 富文本外层包裹:安卓可,ios不可 ③ 提取富文本文字后加css样式:安卓可,ios可,不完美的解决办法

    2024年02月16日
    浏览(26)
  • iOS 17 适配 Xcode 15 问题

    在适配 iOS 17 + xcode 15时遇到的问题,记录一下。 1、 Could not build module ‘WebKit’ 解决方案: 选中不能编译的库的xcodeproj,在 Build Phrases - Compile Sources ,选中所有文件, Complier Flags 里删除 -DOS_OBJECT_USE_OBJC=0 可能是三方库的目标版本比较低,cocoapods兼容低版本自动加上了 - DOS_

    2024年02月08日
    浏览(47)
  • 安卓和ios针对于new Date()数据格式的兼容问题

    IOS 手机不识别 YYY-MM-DD HH:mm:ss 格式的日期传参。 在项目中需要实现倒计时,这个倒计时的时间是后端同学给到前端的,我们针对当前时间到结束的时,进行倒计时,这个功能在测试的时候安卓手机和iOS手机都没问题,但是哦生产有用户反馈ios手机无法出现倒计时 发现是ios低版本的情

    2024年02月04日
    浏览(30)
  • h5逻辑_解决h5页面嵌入ios兼容性问题

    安全区域 如下图所示~ 蓝色部分为安全区域。处于安全区域内的内容不受圆角、齐刘海、小黑条的影响。 若是将h5页面嵌入app中,就需要进行适配— 让h5页面展示在安全区域内。 tips: 安全区域是在ios11之后并且是iPhoneX及以上机型才有的。 因此我们只需适配以上机型其余机型

    2024年02月14日
    浏览(60)
  • XCode15与iOS17/17.1 真机测试问题处理

    XCode15与iOS17/17.1 真机测试问题处理,网上相关博客很多,摘录了如下实践后能起作用的地址如下: Xcode 15 报错处理 - 简书 iOS17版本适配-CSDN博客 Xcode15适配-六虎 主要介绍下:Assertion failure in void _UIGraphicsBeginImageContextWithOptions(CGSize, BOOL, CGFloat, BOOL)(), UIGraphics.m:410 问题处理, 由

    2024年02月07日
    浏览(38)
  • iOS 17.1 新版发布,修复辐射超标问题

    苹果向开发者推送了 iOS 17.1 Beta 3 测试版更新,同时推送的还有 iPadOS 17.1、macOS 14.1、watchOS 10.1 的第三个测试版,距离上次更新过了七天。 iOS 17.1 Beta 3 版本号为 21B5066a ,从 iOS 17.1 Beta 2 进行 OTA 升级大约需要 988 MB。(测试机型 iPhone 13) 另外,苹果还发布了 iOS 16.7.1 正式版,

    2024年02月07日
    浏览(44)
  • 微信小程序ios下,border显示不全兼容问题解决

    小程序在ios系统中,如果border小于1px的情况下,border就可能显示不全(可能少了上下左右任意一边) 只需要加一个::after或::before伪类,使用绝对定位定在原来元素上边就不会产生问题了!

    2024年02月10日
    浏览(37)
  • 微信小程序 IOS中new Date()时间格式不兼容问题

    问题描述: 最近在小程序项目中遇到了处理Date时间格式的需求,在Android手机测试是没有发现问题的,但是在IOS上 时间转换出现了错误。 解决方案: 这里主要兼容问题在于Android可以处理 ‘-’ 与 ‘/’ ,而IOS只能处理 ‘/’ 的时间格式,具体如下: 总结: 这里需要注意的

    2024年02月13日
    浏览(47)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包