专栏首页進无尽的文章扒虫篇-Bug日志 Ⅵ

扒虫篇-Bug日志 Ⅵ

1. Xcode中开发者账号登陆不上

试了试其他的账号也是一样,在账号密码没有输入错误的情况下还是登陆不上。 解决办法:重启电脑就解决了。

2. Xcode9中往工程中拖入文件很容易报错

很奇怪的是,以前的Xcode拖入文件时,这里的m文件都会自动添加进来,但是Xcode9中会经常出现往工程中拖入文件 报 Undefined symbols for architecture x86_64:的错

解决办法: 如下图添加进来即可

3.一处 Extern 造成的报错

这样修改后就好了

4.修改UITextField 的placeholder字体不起效果

    _numberTF.placeholder = @"请输入数量";
    [_numberTF setValue:GrayTextColor forKeyPath:@"_placeholderLabel.textColor"];
    [_numberTF setValue:[UIFont fontWithName:@"Helvetica" size:14] forKeyPath:@"_placeholderLabel.font"];

那是因为要先设置 placeholder 然后再设置,上面的代码顺序颠倒就不会有效果了。

5.修复一个MBProgressHUD不消失的Bug

如上图,以及执行过[MBProgressHUD hideHUDForView:subVC.view];可是有一个MBProgressHUD指示器依然不消失,最后无奈修改了 MBProgressHUD.m里面的下面这个方法解决了。

+ (BOOL)hideHUDForView:(UIView *)view animated:(BOOL)animated {

  NSEnumerator *subviewsEnum = [view.subviews reverseObjectEnumerator];
  BOOL haveHUD = NO;
  for (UIView *subview in subviewsEnum) {
      if ([subview isKindOfClass:self]) {
          ((MBProgressHUD *)subview).removeFromSuperViewOnHide = YES;
          [(MBProgressHUD *)subview hide:animated];
          haveHUD = YES;
      }
    }
    return haveHUD;
}

6.iOS 11裁剪图片偏移问题

1511833721528188.png

解决方法:

裁剪时,隐藏statusBar。(此Bug在iOS8也会出现,iOS 9/10是正常的。)

iOS 8隐藏statusBar需要在UIImagePickerController的delegate实现中,添加以下代码

- (void)navigationController:(UINavigationController *)navigationController
  willShowViewController:(UIViewController *)viewController
                animated:(BOOL)animated {
    if ([navigationController isKindOfClass:[UIImagePickerController class]] ) {
        [[UIApplication sharedApplication] setStatusBarHidden:YES];
    }
}

7.真机调试中 Counld not launch “XXXX” 手机 has denied the launch request

以为是偶尔出现的Bug,多次运行,换手机还是这样报错,原来这是因为工程证书配置的问题。 赶快看看这个地方的配置吧

8.动态获取文字高度时,调整Label后总是仍然显示不完全(有省略)

[bgView addSubview:rightLabel[i]];
 rightLabel[i].sd_layout
        .leftSpaceToView(bgView,Scale_X(95))
        .topSpaceToView(i==0?bgView:rightLabel[i-1],Scale_Y(10))
        .rightSpaceToView(bgView, Scale_X(20))
        .heightIs(Scale_Y(15));  

 CGFloat height =[[MethodTool shareTool]changeStationWidth:rightLabel[2].text anWidthTxtt:(WIDTH-Scale_X(115)) anfont:MEDIUM_FONT];
 rightLabel[2].sd_layout.heightIs(Scale_Y(height));

看上面的代码没什么问题呀,95+20=115呀,可为什么就是显示不完全呢,最后发现bgView的宽度不是 WIDTH ,而是WIDTH-30,粗心大意的话,很容易找不到问题陷入纠结中。

9.添加新设备后修改 Provisioning Profiles 遇到的问题

配置文件路径:~/Library/MobileDevice/Provisioning Profiles

选择A后

选择B后

不知何种原因,B是无效的,如果勾选 Automatically manage signing 后就无法指定某个配置文件签名打包了。

添加一个新的手机UUID,此时点击原来的配置文件的 Edit 并且 select all 设备后,下载新的配置文件并双击安装到本地。选择后如果如A一样的情况,就是没问题的。

10.为UIView添加边框时的Bug

这个问题也不是难,就是隐藏性比较强,稍不注意,不认真分析,想当然的话就会被困住很久。

self.whiteBgView = [[UIView alloc]initWithFrame:CGRectMake(0, 0, selfWidth, 0)];
self.whiteBgView.backgroundColor = [UIColor whiteColor];
[self addSubview:self.whiteBgView];
[self.whiteBgView addBorderForColor:[UIColor redColor] borderWidth:1 borderType:UIBorderSideTypeBottom|UIBorderSideTypeRight];

明明设置的不是上边加边框呀,为什么变成这样? 这是因为:self.whiteBgView的高度是0,造成的,我晕。正确的设置为,self.whiteBgView高度动态设置好了后再加边框,这样就不会出现这样的问题了。

[UIView animateWithDuration:0.1 delay:0 options:UIViewAnimationOptionCurveEaseOut animations:^{
        [self.whiteBgView setHeight:Scale_Y(110)];
        self.sd_layout.heightIs(Scale_Y(150));
    } completion:^(BOOL finished) {
        [self addBorad];  //高度设置好以后再设置边框。
    }];

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 实践 -实现一款中间凸起的TabBar

    这是看到一篇文章后感觉很有意思于是就把自己的效果改了改实现了一下,文末有原文链接。

    進无尽
  • 绘图- 镂空效果及其动画实现解析

    有时你会看到很多镂空的试图或者是镂空视图的动画效果,感觉很酷炫,其实只要掌握其中实现的原理,想实现怎样的效果就能实现怎样的镂空效果。

    進无尽
  • 实践-小效果 Ⅳ

    设置一个UIImageView为倒立的同等控件,设置这个UIImageView的layer的mask为一个渐变图层,效果就出来了。

    進无尽
  • [pytorch] 一种加速dataloder的方法

    MachineLP
  • Python获取B站视频弹幕 简单处理

    之前看到了网上有人做过一些up的B站弹幕数据可视化,感觉还挺有意思,于是自己就动手做着玩了一下(没有做可视化)。祝福武汉,祝福中国!

    啤酒单恋小龙虾
  • Python Web Flask源码解读(二)——路由原理

    在 Flask中是使用 @app.route这个装饰器来实现 url和方法之间的映射的。

    阳仔
  • Python模拟登陆 —— 征服验证码 7 京东

    登录界面 京东的登录表单设置了许多隐藏字段,如下所示: 隐藏字段 所以都要获取下来。 同样也是输错三次之后出现authcode。 验证码 import requ...

    SeanCheney
  • 使用while循环打印颜色相隔表格

    <?php //手动画表格相当于画二维数组 header("Content-Type:text/html; charset=utf8"); ...

    闵开慧
  • python学习笔记--趣学Python

    py3study
  • 《一头扎进》系列之Python+Selenium框架设计篇5 - 价值好几K的框架,哎呦!这个框架还真有点料啊!!!

      其实,到前面这一篇文章,简单的Python+Selenium自动化测试框架就已经算实现了。接下来的主要是介绍,unittest管理脚本,如何如何加载执行脚本...

    北京-宏哥

扫码关注云+社区

领取腾讯云代金券