http://blog.csdn.net/wanglang3081/article/details/7464943
这篇文章说比较不错,但主要是对label和textfield的自定义,对edgeinset说的反而较少
至于edgeinset,只要理解它的结构即可,
UIEdgeInsets UIEdgeInsetsMake (
CGFloat top,
CGFloat left,
CGFloat bottom,
CGFloat right
);
具体要结合在什么控件内使用。也就是在控件的方形范围内,距离这个范围的上边、左边、下边、右边的距离是多少。
在UIButton中有三个对insets的设置:content、title、image
设置content是title和image一起变化。但是定义也会根据情况而变化,因为我们也知道如果上下的距离加起来超过了范围的高肯定会出问题,具体还是手动去调调看吧。我再试验中发现,超过范围太多的情况下,按钮反倒变大了,超过了范围。
而且,一个比较有用的应用是设置title的insets可以达到image和title同时显示的效果(一般设置image会把title挡住)
[btn setTitleEdgeInsets:UIEdgeInsetsMake(0.0, -image.size.width, 0.0, 0.0)];
这里很奇怪的是使用了一个很大的负数,所以是不是说一般情况下看不见文字是因为文字被图片挤到右边了?。。搞不懂