zoukankan      html  css  js  c++  java
  • 【iOS基础学习随笔-3】frame与bounds到底有什么联系

    先说一下网上其他博客抄来抄去也就算了,关键是我都怀疑你抄完了以后你懂了么?自己都不懂抄过来让谁看呢?

        UIButton *subView = [UIButton buttonWithType:UIButtonTypeCustom];

        subView.frame = CGRectMake(0, 0, 200, 200);

        [subView addTarget:self action:@selector(dianji) forControlEvents:UIControlEventTouchUpInside];

        [subView setBounds:CGRectMake(-20, -20, 100, 100)];

        subView.backgroundColor = [UIColor redColor];

        [self.view addSubview:subView];

        NSLog(@"--%@",NSStringFromCGRect(subView.frame));

        

        UIView *view1 = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 100, 100)];

        view1.backgroundColor = [UIColor greenColor];

        view1.alpha = 0.5;

        [subView addSubview:view1];

     

     

    subView在setBounds后发生如下变化

    1、subView原先的左上交的点的坐标点为(0,0),现在为(-20,-20),所以view1现在的效果相当于原来的(20,20,100,100),实际上view1的frame并没有改变,只是效果变了

    2、subView大小缩小为剧中缩小,新的frame为(50,50,100,100),这个50 是原来的宽(高)减去现在的宽(高)除以2(因为前后都一样才算是剧中缩小)得出的。发生这种变化的原因我也不清楚,这个结果是试验出来的。

     

     

     

    网上大多只说了第一种情况而没说第二种情况。

  • 相关阅读:
    程序员通过什么渠道接外包项目
    中小型软件项目开发一般流程建议
    DevExpress GridControl功能总结
    页面UI注意事项,你在乎吗?
    加密,解密
    本地化(国际化)
    AutoLayout(自动布局)
    UItableView与UICollectionView
    分享iOS开发常用(三方类库,工具,高仿APP,实用网站,技术干货)
    NSPredicate
  • 原文地址:https://www.cnblogs.com/Hanzo/p/6048241.html
Copyright © 2011-2022 走看看