iphone UitextView 文本被截断

Posted

技术标签:

【中文标题】iphone UitextView 文本被截断【英文标题】:iphone UitextView Text cut off 【发布时间】:2009-09-29 00:38:25 【问题描述】:

我有一个用文本文件填充的 Uitextview。我在页面上有一个控件,允许用户启用和禁用分页。我遇到的问题是文本的顶部和/或底部线有时会“分成两半”,因此您只能看到该行的顶部或底部。我相信下面的代码应该可以解决它。代码获取文本的行高和框架高度,计算出屏幕上可见的行数,并创建一个新的框架高度以使其适合。虽然框架确实调整了大小,但它仍然“切断”了顶线和/或底线。有人有什么建议吗?我的数学错了吗?

谢谢!!!

 - (void)fitText
    

            CGFloat maximumLabelHeight = 338;
            CGFloat minimumLabelHeight = 280;

            CGSize lineSize = [theUiTextView.text sizeWithFont:theUiTextView.font];
            CGFloat lineSizeHeight = lineSize.height;
            CGFloat theNumberOfLinesThatShow = theUiTextView.frame.size.height/lineSize.height;

            //adjust the label the the new height
            theNumberOfLinesThatShow = round(theNumberOfLinesThatShow);

            CGFloat theNewHeight = lineSizeHeight * theNumberOfLinesThatShow;

            if (theNewHeight > maximumLabelHeight)
        
            theNumberOfLinesThatShow = theNumberOfLinesThatShow - 1;
            theNewHeight = lineSizeHeight * theNumberOfLinesThatShow;
        
        if (theNewHeight < minimumLabelHeight)
        
            theNumberOfLinesThatShow = theNumberOfLinesThatShow + 1;
            theNewHeight = lineSizeHeight * theNumberOfLinesThatShow;
        

            //adjust the label the the new height.
            CGRect newFrame = theUiTextView.frame;
            newFrame.size.height = theNewHeight;
            theUiTextView.frame = newFrame;

【问题讨论】:

【参考方案1】:

UIScrollView(而 UITextView 是一个 UIScrollView)似乎在两边都使用了固定的 8 像素插图。这似乎与对齐或字体大小无关。

所以,我认为您在这里缺少的是 16.0 的软糖因子 - 请参阅 this question.

【讨论】:

以上是关于iphone UitextView 文本被截断的主要内容,如果未能解决你的问题,请参考以下文章

确定 UITextView 将截断字符串的位置

iPhone:使用样式 UITableViewCellStyleValue1 的 UITableView 防止文本截断

iphone 始终在 UITextView 中隐藏一些文本

iPhone:在嵌入式 UITextView 中输入文本时滚动 UIScrollview

如何在 iPhone 中动态更改 UITextView 中文本的字体大小

如何在 UItextView 中添加 placeHolder 文本?在 iphone sdk [重复]