Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/116.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 根据宽度获取文本高度_Ios_Objective C_Text_Width_Uitextview - Fatal编程技术网

Ios 根据宽度获取文本高度

Ios 根据宽度获取文本高度,ios,objective-c,text,width,uitextview,Ios,Objective C,Text,Width,Uitextview,我有一个任意数量的字符串。 现在用魔杖把这个字符串画成一个矩形。 例如,rect需要250像素宽 我想知道如何得到这篇文章的高度 具有特定的字体和大小。来自NSString UIKit增补(:) 使用 sizeWithFont:constrainedToSize:lineBreakMode: 使用它的方式是,在您的案例中使用宽度为250的约束,高度非常高(比如10000)。 然后返回实际宽度(可能略小于250)和所需高度 但请注意,它最近被弃用了。你可以用 boundingRectWithSiz

我有一个任意数量的字符串。 现在用魔杖把这个字符串画成一个矩形。 例如,rect需要250像素宽

我想知道如何得到这篇文章的高度
具有特定的字体和大小。

来自NSString UIKit增补(:)

使用 sizeWithFont:constrainedToSize:lineBreakMode:

使用它的方式是,在您的案例中使用宽度为250的约束,高度非常高(比如10000)。 然后返回实际宽度(可能略小于250)和所需高度

但请注意,它最近被弃用了。你可以用 boundingRectWithSize:选项:属性:上下文: 从iOS 7开始。通常不推荐的方法会存在一段时间,但您不能依赖它。因此,如果你想让你的应用程序在iOS 6或更旧版本中运行,那么你可能会使用不推荐的方法一段时间,或者你可以检查操作系统,然后使用旧的或新的方法继续


如果您使用的是OS-X而不是iOS,请道歉。如果那样的话,我的回答将毫无帮助。您没有标记操作系统

您可以使用“sizeWithFont:”方法获取高度和宽度,如下所示:

UIFont *myFont = [UIFont boldSystemFontOfSize:15.0];

// Get the width of a string ...
CGSize size = [@"Some string here!" sizeWithFont:myFont];
CGSize是一个C结构,因此您可以按如下方式访问高度和宽度:

  // Print height and width
  NSLog(@"h: %f \t w:%f", size.height, size.width);

请参阅
NSString
UIStringDrawing
类别中的方法。他用UITextView标记,当然是iOS
sizeWithFont
在iOS 7中被弃用@swilliams,正确,它已被弃用,这已在答案中考虑。
sizeWithFont
在iOS 7中被弃用。