A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

2黑马币
请问frame在什么情况下修改需要借助中间变量?

最佳答案

查看完整内容

调整view的frame中的origin和 size 值的时候

5 个回复

倒序浏览
调整view的frame中的origin和 size 值的时候
回复 使用道具 举报
你这悬赏的太少了
回复 使用道具 举报
你看我创建了一个button,但是我不能直接改变button的frame,但是我可以先创建一个CGRect类型的变量,改变这个变量的size或者origin值。再把这个值直接赋值给button的frame。就像楼上说的调整view的frame中的origin和 size 值的时候,不能直接改变这些值,需要借助中间变量。


  1.     UIButton * myButton = [UIButton buttonWithType:UIButtonTypeSystem];
  2.     myButton.frame = CGRectMake(100, 100, 100, 30);
  3.     [self.window addSubview:myButton];

  4.     CGRect frame = myButton.frame;
  5.     frame.size.height = 200;
  6.     myButton.frame = frame;
  7.     NSLog(@"myButton.frame = %@",NSStringFromCGRect(myButton.frame));
  8.    
  9.     //myButton.frame = {{100, 100}, {100, 200}}
复制代码
回复 使用道具 举报
今天刚看到ios进阶视频这部分,因为OC不允许直接修改对象结构体的成员属性,所以如果要修改,需要借助中间变量
回复 使用道具 举报
view的frame中的origin和 size 值被调整的时候
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马