美文网首页
IOS日常开发中遇到的小问题

IOS日常开发中遇到的小问题

作者: 多啦A梦的百宝袋 | 来源:发表于2016-09-01 14:26 被阅读33次

    1,UIButton 添加多行文字
    解决方法:
    1),如果两行文字大小相同,颜色相同,可以直接设置Line Break为Word Wrap,然后在Title中按option+enter就可以增加行数。
    2),要想两行文字大小不同,颜色不同,那加一个UILabel作为UIButton的subview了应该是最方便的实现方式了。
    2,使用带xib的view
    UINib *nib = [UINib nibWithNibName:@"AboutUsHeadView" bundle:nil];
    AboutUsHeadView *header = [[nib instantiateWithOwner:nil options:nil] firstObject];
    3,UIView上添加一个UIButton ,点击时间不响应,addTarget: action无效
    解决方法:
    1),检查UIView的frame是否小于UIButton的frame
    2),userInteractionEnabled = yes;
    注意:如果是添加在UITableview headerView 或者 footerView上 需要用代码设置高度(这个很重要)
    4,用代码绘制一个图片
    // 根据你尺寸和颜色,绘制一个纯色的图片
    // @param size 图片尺寸
    // @param color 图片颜色
    // @return 绘制好的图片
    -(UIImage *)createImage:(CGSize)size color:(UIColor *)color{
    UIGraphicsBeginImageContextWithOptions(size, YES, 0);
    CGContextRef context = UIGraphicsGetCurrentContext();
    CGContextSetFillColorWithColor(context, [color CGColor]);
    CGContextFillRect(context, CGRectMake(0, 0, size.width, size.width));
    UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
    UIGraphicsEndImageContext();
    return image;
    }
    5,xcode 不提示自己写的代码问题
    解决方案:
    1)、在Build Settings 的 search Paths 下的 User Header Search Paths 中双击右边空白。然后点+号添加 $(PODS_ROOT) 代码,并在右边的选项中选择recursive选项。完成设置。然后我们导入类库进就会有提示了
    2)、如果还是不行,可以试试如下方法。 同样在Build Settings 中找到 Weak References in Manual Retain Release 选项,在右边的Sqlite下方将NO改为YES.
    6,storyboard 传值

    -(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{
        if ([segue.identifier isEqualToString:@"enterHomePageHeaderBtn"]) {
            UIButton *btn = sender;
            HomePageHeaderBtnActionController *homePageHeader = segue.destinationViewController;
            homePageHeader.identifier = btn.titleLabel.text;
        }
    }
    

    7, UICollectionView

    //每个cell的大小
    - (CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout*)collectionViewLayout sizeForItemAtIndexPath:(NSIndexPath *)indexPath{
        CGFloat width = (SCREEN_WIDTH-5)/2.0;
        return CGSizeMake(width, width+70);
    }
    //设置每个cell的上下左右的间距
    - (UIEdgeInsets)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout*)collectionViewLayout insetForSectionAtIndex:(NSInteger)section{
        return UIEdgeInsetsMake(0, 0, 10, 0);
    }
    
    //最小列间距
    -(CGFloat)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout *)collectionViewLayout minimumInteritemSpacingForSectionAtIndex:(NSInteger)section{
        return 5;
    }
    //设置头部的高度
    - (CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout*)collectionViewLayout referenceSizeForHeaderInSection:(NSInteger)section{
        return CGSizeMake(SCREEN_WIDTH, 344);
    }
    

    8,取消UIButton的Target事件

     [_rightBtn removeTarget:nil action:NULL forControlEvents:UIControlEventAllEvents];
    

    9,xcode8 com+/ 注释不能使用问题
    终端下执行命令sudo /usr/libexec/xpccachectl,然后重启即可

    10,UIButton 圆角

     self.submitBtn.layer.masksToBounds = YES;
    //如果想要设置圆形,button的长宽相等,cornerRadius等于宽度的一半
     self.submitBtn.layer.cornerRadius = 5.0;
    

    相关文章

      网友评论

          本文标题:IOS日常开发中遇到的小问题

          本文链接:https://www.haomeiwen.com/subject/ougcettx.html