请问Xcode 6 我用代码改变storyboard的控件的frame值为什么无法成功?-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文

请问Xcode 6 我用代码改变storyboard的控件的frame值为什么无法成功?

2016-03-17 09:33:45 1705 1
#import "ViewController.h"

@interface ViewController ()
@property (weak, nonatomic) IBOutlet UIButton *btn;

@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.
    NSLog(@"%f %f %f %f",_btn.frame.origin.x,_btn.frame.origin.y,_btn.frame.size.height,_btn.frame.size.width);
    _btn.frame = CGRectMake(20, 20, 280, 280);
    NSLog(@"%f %f %f %f",_btn.frame.origin.x,_btn.frame.origin.y,_btn.frame.size.height,_btn.frame.size.width);
}

- (void)didReceiveMemoryWarning {
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}

@end

在运行后 输出结果为:

2014-09-21 15:25:34.779 test[2473:80334] 20.000000 20.000000 30.000000 30.000000
2014-09-21 15:25:34.784 test[2473:80334] 20.000000 20.000000 30.000000 30.000000
取消 提交回答
全部回答(1)
  • 问问小秘
    2019-10-17 13:18:03
    在iOS开发中,使用Main.storyboard来设计界面是每一个iOS开发人员需要面对的问题,使用storyboard相比较Android中使用XML来设置布局,有优点也有缺陷,现在我们来谈谈storyboard的设计技巧。(1)直接使用鼠标右键可以直接缩放storyboard的缩放比例。当然你也可以用触摸板使用2根手指缩放。。(2)拖拽控件绑定到代码中,不一定要从设计界面的控件中进行拖拽,也可以直接从左侧的列表中拖拽,这样会更加清晰方便。。(3)如何添加修改超过一屏的控件。我们把控件拖拉到界面上,只能设置一屏的控件,如果我们使用了ScrollView控件,需要设计超过一个屏幕长度的布局,应该怎么?其实我们也可以直接拖拉控件到左侧的列表中,而没必要拖拉到界面上。然后可以修改一些位置数据,就可以完成更个滚动界面的设计。所以此时就算我们“看不到”控件,也可以设置控件的各个属性。(4)在代码中删除一行绑定代码,或者在storyboard中删除一个控件,最好提前先去右侧的ShowtheConnectionsInspector中删除有关这个控件的绑定,否则可能会出错误。造成空指针异常,错误类似“。。。nil。。。uncaught”..(5)控件的X,Y,坐标,指的都是相对坐标。相对的位置是父类容器的位置。如果一个ScrollView中有一个TextView,那么这个TextView的X,Y坐标的值是相对这个ScrollView来说的。并不是相对于整个界面。有点类似与Android中的相对布局。(6)如果你使用了底部的TabBar,也就是底部的导航栏,那么默认一行只能显示5个,超过5个的会在最后以More显示,多余的Tab会在点击More后显示。(7)如果一个类已经在代码中继承了Datasource,或者Delegate,某个控件想要实现这个数据源或者委托,不需要在代码中写***.delegate=self这样的代码,直接在storyboard中按住控件右键拖拽到界面的ViewController中,就会出现DataSource或者Delegate,选中就可以了,简单粗暴。(8)控件可以直接在storyboard左侧的列表中,按住option键和鼠标左键快速复制。这样就可以在界面中复制出2个一模一样的两个控件了,不必要再进行拖拉。(9)iOS的顶部状态栏的背景图片可以自定义设置,实现方法见《iOS项目开发实战——自定义设置导航栏和状态栏背景》。
    

    答案来源网络,供参考,希望对您有帮助

    0 0
相关问答

8

回答

短视频SDK如何做到视频原始比例裁剪?

樰篱 2017-09-13 17:35:01 39464浏览量 回答数 8

11

回答

iphone设置阿里云邮箱的步骤

minioba 2013-04-24 22:04:37 102341浏览量 回答数 11

38

回答

【hi聊】2019年终回顾:程序员这些年经历最大的变化

问问小秘 2019-12-16 16:46:59 47964浏览量 回答数 38

28

回答

钉钉开放平台“常见问题常见问题常见问题“重要请关注

竹梅 2015-12-03 00:39:14 93839浏览量 回答数 28

1

回答

2020年阿里、字节:一套高效的iOS面试题(二)

montos 2020-04-13 15:08:17 36337浏览量 回答数 1

87

回答

ECS云服务器用户操作帮助指南(官方)

qilu 2014-10-22 12:25:15 43100浏览量 回答数 87

11

回答

如何直接上传文件至OSS,不用服务器中转

cevin 2014-01-06 23:05:39 38627浏览量 回答数 11

3

回答

2020年05月编程排行榜-C语言继2015年,重新成为编程排行榜第一名

huc_逆天 2020-05-06 13:43:42 35580浏览量 回答数 3

58

回答

技术入门问答集锦,涉及多种技术方向,解决新人学习困惑

管理贝贝 2016-08-03 10:13:27 52765浏览量 回答数 58

46

回答

H5技术百问——不懂H5你就OUT啦

yq传送门 2017-09-09 11:03:04 47438浏览量 回答数 46
+关注
2
文章
9426
问答
问答排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载