zoukankan      html  css  js  c++  java
  • UIScrollView 性能优化

    进入做地图闹钟app,图层关系是这样的: subwayView 上先绘制线路上各个元素:线条 ,站点名称-Label,站点位置(画圆圈表示)-View.shapeLayer UIBezierPath 方式绘制;subwaView add 在Scrollview 上,然后实现放大缩小操作,发现上下左右移动时候不是很流畅的感觉,分析应该是subwayView 的subView数量(200多个 )有影响。

         想到的办法subwayView 绘制完所有的Subview后 ,将其转化为Image,然后移除所有的Subview,再将在 subwayView 上嵌套imageview ,之后缩放相当于缩放一个iamge。

    经过测试果然流畅了。问题视乎解决了。但是发现label的文字确很模糊 ,特别是放大后,于是必须提高转化的图片的像素,使用如下方法:

    - (UIImage *)convertViewToImage:(UIView*)v{
        //设置高分辨率 防止文字模糊
        UIGraphicsBeginImageContextWithOptions(v.bounds.size, false, [[UIScreen mainScreen] scale]*2);
    
        [v.layer renderInContext:UIGraphicsGetCurrentContext()];
        
        UIImage*image = UIGraphicsGetImageFromCurrentImageContext();
        
        UIGraphicsEndImageContext();
        
        return image;
        
    }

  • 相关阅读:
    京东精益敏捷教练分享:敏捷助力产品创新!
    设计规范 | 详解组件控件结构体系
    Axure响应式进阶
    通讯录表设计
    TEST1
    c#练习四单元总结
    窗体控件应用总结(1)
    .NET(c#理解)
    test2-11
    test1-1
  • 原文地址:https://www.cnblogs.com/zhujin/p/5600014.html
Copyright © 2011-2022 走看看