Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/23.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 UITextView在可见文本末尾添加…更多按钮_Ios_Objective C_Iphone - Fatal编程技术网

Ios UITextView在可见文本末尾添加…更多按钮

Ios UITextView在可见文本末尾添加…更多按钮,ios,objective-c,iphone,Ios,Objective C,Iphone,UITextView在可见文本的末尾添加…更多按钮,如facebook上的。 如果已经在什么地方提到了,我很抱歉。我特别感兴趣的是如何使用包装词计算可见文本结尾的位置。根据文本和字体检查UItextView大小: // return the size for UITextView for both IOS7 and IOS6 -(CGSize) getSizeWithMaxLabelSize:(CGSize) maxLabelSize forTextViewWithText:(NSString

UITextView在可见文本的末尾添加…更多按钮,如facebook上的。
如果已经在什么地方提到了,我很抱歉。我特别感兴趣的是如何使用包装词计算可见文本结尾的位置。根据文本和字体检查UItextView大小:

// return the size for UITextView for both IOS7 and IOS6
-(CGSize) getSizeWithMaxLabelSize:(CGSize) maxLabelSize forTextViewWithText:(NSString *) text
{
CGSize expectedLabelSize;
CGSize maximumLabelSize = maxLabelSize;
if (SYSTEM_VERSION_GREATER_THAN(@"6.2")) {
    NSDictionary *stringAttributes = [NSDictionary dictionaryWithObject:[UIFont fontWithName:@"Arial" size:EPCommentViewFontSize] forKey: NSFontAttributeName];
    CGRect rect =[text boundingRectWithSize:maximumLabelSize options:NSStringDrawingUsesLineFragmentOrigin attributes:stringAttributes context:nil];
    expectedLabelSize = rect.size;
    expectedLabelSize.height = ceilf(expectedLabelSize.height);
    expectedLabelSize.width  = ceilf(expectedLabelSize.width);
} else {
    expectedLabelSize = [text sizeWithFont:[UIFont fontWithName:@"Arial" size:EPCommentViewFontSize] constrainedToSize:maximumLabelSize lineBreakMode:NSLineBreakByWordWrapping];
}
  return expectedLabelSize;
}
二,。将UITextView高度与expectedLabelSize.height进行比较,以显示或不显示
ViewMore

三,。触摸viewMore时更改UITextView frame.size.height

CGRect frame = _textView.frame;
frame.size.height = [self getSizeWithMaxLabelSize:CGSizeMake(_textView.frame.size.height, NSIntegerMax) forTextViewWithText:_textView.text].height;
_textView.frame = frame;

对我播下了这个答案。但我感兴趣的是,如果此行中的文本不在行尾,如何计算更多按钮的位置。(例如:可能的解决方案是获取uitextview中的最后一行宽度)只需获取当前行的大小