开发中几个小问题总结

这两天写代码遇到了些小问题总结下记录下供参考:

  • 很少用xib,今天遇到一个xib崩溃问题
NSUnknownKeyException', 
reason: '[<NSObject 0x6000000148b0> setValue:forUndefinedKey:]: 
this class is not key value 
coding-compliant for the key userNumberLabel

除了检测关联属性是否存在和正确之外,还可以试着选择如图第二个属性:

屏幕快照 2018-10-25 19.11.56.png

  • 设置UIImageView背景图片拉伸变形
    今天用老大给的一个图作为cell的背景图,要能铺满当前视图并且View不能变形。可以用如下类似代码方法:
 UIImage *image = [UIImage imageWithContentsOfFile:[NSString stringWithFormat:@"%@/fitfun_cell_bg.png",ffBundle.bundlePath]]; // 设置端盖的值
    //防止图片拉伸变形
    CGFloat top = image.size.height * 0.5;
    CGFloat left = image.size.width * 0.5; CGFloat
    bottom = image.size.height * 0.5;
    CGFloat right = image.size.width * 0.5; // 设置端盖的值
    UIEdgeInsets edgeInsets = UIEdgeInsetsMake(top, left, bottom, right); // 设置拉伸的模式
    UIImageResizingMode mode = UIImageResizingModeStretch; // 拉伸图片
    UIImage *newImage = [image resizableImageWithCapInsets:edgeInsets resizingMode:mode];
    UIImageView *imageView = [[UIImageView alloc]initWithImage:newImage];
    //imageView.contentMode = UIViewContentModeScaleAspectFit;
    cell.backgroundView = imageView;

今天我又试着xib里面添加个imageView,为了让图片不变形,我在xib里面看到了如下属性stretching,可以通过调整stretching的值,达到同样效果:

屏幕快照 2018-10-25 19.28.48.png

  • 改变cell.imageView.image显示的图片的大小
    有个需求cell最左边显示图片,我不想添加多余的视图,就用了cell.imgeView来实现,刚开始实现发现添加的图片太大,无法通过cell.imgeView.frame属性改变,因为你设置了不起作用,可以通过获取上下文方式改变。类似代码如下:
 UIImage *cellImage = [UIImage imageWithContentsOfFile:[NSString stringWithFormat:@"%@/%@",ffBundle.bundlePath,cellImageName]];
    CGSize itemSize = CGSizeMake(25, 25);//希望显示的大小
    UIGraphicsBeginImageContextWithOptions(itemSize, NO, UIScreen.mainScreen.scale);
    CGRect imageRect = CGRectMake(0.0, 0.0, itemSize.width, itemSize.height);
    [cellImage drawInRect:imageRect];
    cell.imageView.image = UIGraphicsGetImageFromCurrentImageContext();
      UIGraphicsEndImageContext();
  • Xib 在UIImageView无法添加subViews
    不管我怎么拖拽,发现用无法再UIImageView其上面通过xib添加子视图,然后网上查了,发现确实无法添加,只能通过代码添加了。具体可参考别人的回答
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • https://www.jianshu.com/p/b81f7aa84ee2 我是一个资深伪球迷,四年看一次足球。...
    燕子溪阅读 1,175评论 10 18
  • 阳光午后, 耳边再次想起你那对不起的过去式。
    辰悸阅读 141评论 0 0
  • 今天有老乡去老家扫墓。我也跟着去,我是踏春去,也顺便看看老爸老妈。想起应老师说“见一面就多一面”。第一次看到这句话...
    心曙_d605阅读 235评论 2 6
  • 很多人都抱怨自己一事无成,只能看到那些成功者光鲜亮丽的一面,却不知道他们为此在背后付出了多大的艰辛,不久前我...
    月肜阅读 390评论 0 1
  • 今天去看了电影,看不见的客人。据说是西班牙的电影,我去百度一搜,嘿,还真是西班牙的电影,这据说的还真的很准确。莫名...
    叫他三轮车阅读 499评论 2 1