sizeToFit()使用心得

Posted 李洪强

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sizeToFit()使用心得相关的知识,希望对你有一定的参考价值。

sizeToFit()使用心得:

很多的初学者,包括我在内,当初在学习的时候,特别纠结什么时候用这个sizeToFit()。 下面我就来分享一下我的一些使用心得。

一.我们先来看看官方文档对sizeToFit()的声明:(Swift版本的)

// calls sizeThatFits: with current view bounds and changes bounds size.

// 翻译:调用sizeThatFits方法:参数(与当前视图范围和变化的界限大小)。

   public func sizeToFit() 

// return ‘best‘ size to fit given size. does not actually resize view. Default is return existing view size

// 翻译:返回‘最好‘的大小以适合给定大小。实际上不调整视图。默认值是返回现有的视图大小

  public func sizeThatFits(size: CGSize) -> CGSize

从官方文档中我们可以看出,调用sizeToFit的时候,类似于系统会根据内容的帮我布局一个它认为最合适的大小。

另外sizeToFit()声明在UIView中,所以我们的所有的视图控件,都可以调用这个方法

二.既然所有的控件都可以调用这个方法,但是实际的开发中,我们好像也不经常使用它,来做一些布局什么的?

原因:我们一般在不方便手动布局的时候才调用sizeToFit方法,下面我们就具体的看看哪些场合,不适合手动布局:

1.navigationBar中对navigationItem的设置,(添加两个视图以上的控件到Item)

2. toolBar中的对UIBarButtonItem的设置(一般我们还要添加弹簧控件)

上述两种场合就可以用sizeToFit这个方法,来让系统给我们做自动布局。(注意:如果就添加一个控件的话,我们直接设置fram也是可以的)

3.在tabBar中我们不能手动的添加的子控件,因为tabBar是根据控制器系统默认自动添加的tabBarItem。(猜想系统可能也会自动调用了这个方法)

4.UILabel中添加文字,然后让调整label的大小来适应文字,我们也调用sizeToFit的方法

 

以上是关于sizeToFit()使用心得的主要内容,如果未能解决你的问题,请参考以下文章

bpmn使用心得

Golang的pprof的使用心得(CPU,Heap)

ThinkPHP使用心得分享-分页类Page的用法

ThinkPHP使用心得分享-分页类Page的用法

Delphi控制Excel2000心得

xtarbackup使用心得