前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >扒虫篇-Bug日志 Ⅵ

扒虫篇-Bug日志 Ⅵ

作者头像
進无尽
发布2018-09-12 18:11:41
7930
发布2018-09-12 18:11:41
举报
文章被收录于专栏:進无尽的文章進无尽的文章

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

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

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

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

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

3.一处 Extern 造成的报错

这样修改后就好了

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

代码语言:javascript
复制
    _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里面的下面这个方法解决了。

代码语言:javascript
复制
+ (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实现中,添加以下代码

代码语言:javascript
复制
- (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后总是仍然显示不完全(有省略)

代码语言:javascript
复制
[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

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

代码语言:javascript
复制
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高度动态设置好了后再加边框,这样就不会出现这样的问题了。

代码语言:javascript
复制
[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];  //高度设置好以后再设置边框。
    }];
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2017.12.18 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1. Xcode中开发者账号登陆不上
  • 2. Xcode9中往工程中拖入文件很容易报错
  • 3.一处 Extern 造成的报错
  • 4.修改UITextField 的placeholder字体不起效果
  • 5.修复一个MBProgressHUD不消失的Bug
  • 6.iOS 11裁剪图片偏移问题
  • 7.真机调试中 Counld not launch “XXXX” 手机 has denied the launch request
  • 8.动态获取文字高度时,调整Label后总是仍然显示不完全(有省略)
  • 9.添加新设备后修改 Provisioning Profiles 遇到的问题
  • 10.为UIView添加边框时的Bug
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档