如果实现 类似 windows下面的 GetTextExtent的功能

来源:互联网 发布:活体蜘蛛淘宝 编辑:程序博客网 时间:2024/06/14 04:51

                                                            如果实现 类似 windows下面的 GetTextExtent的功能

 

 在我们进行界面编程的过程中,经常会遇到要动态计算出某段text在指定的控件里面所占用的 范围。这种功能在windows下面其实可以用

GetTextExtent函数来实现,但是在iphone中,我们必须按照下面的方法来自己计算。

 

 

  方法:

   1。  我们首先需要获得 控件的font

 

   2。  利用获得的font,我们使用NSString的函数 

- (CGSize)sizeWithFont:(UIFont *)font constrainedToSize:(CGSize)size lineBreakMode:(UILineBreakMode)lineBreakMode  

         来计算占用的区域大小。

 

    关于:size参数,size.width是只X方向的最大值,size.height是指Y方向的最大值。一般width就是控件的最大宽度稍微减去一点,而height则尽量大,因为一般都是宽度固定好了,而只是需要计算出控件的所需要的高度。

 

 

  例子代码如下:

   

原创粉丝点击