在ios 7上动态扩展UITextView

Osv*_*ano 14 uitextview uiview ios7

我正在使用此代码

CGRect frame = self.mytext.frame;
frame.size.height = self.mytext.contentSize.height;
self.mytext.frame = frame;
Run Code Online (Sandbox Code Playgroud)

但它在iOS 7中不起作用.有谁知道为什么或有同样的问题?

编辑:

抱歉.我制作了一个UIView,一个UITextView和一个UIScrollView,所以我可以在我的uitextview展开中加载文本.

我在viewDidLoad中使用了这段代码

CGRect frame = self.moreDetailsTextView.frame;
frame.size.height = self.moreDetailsTextView.contentSize.height;
self.moreDetailsTextView.frame = frame;

CGRect moreViewFrame =  self.moreDetailsView.frame;
moreViewFrame.size.height = frame.size.height + 270;
self.moreDetailsView.frame = moreViewFrame;

int scrollViewHeight =  moreViewFrame.size.height + 235;
self.scrollView.contentSize = CGSizeMake(320, scrollViewHeight);
Run Code Online (Sandbox Code Playgroud)

这在ios6中运行良好,但是现在使用xcode5和ios7,当我在模拟器中测试应用程序时,uitextview不会扩展.

小智 22

在IOS7中注意到sizeToFit也不起作用 - 也许解决方案也可能对你有所帮助

[UITEXTVIEW sizeToFit];
[UITEXTVIEW layoutIfNeeded];
Run Code Online (Sandbox Code Playgroud)


Osv*_*ano 9

最后我做到了.

如果有人遇到同样的问题,那么之前就有了这个代码

    [_moreDetailsTextView sizeToFit];
Run Code Online (Sandbox Code Playgroud)


Mat*_*tič 5

为了解决这个问题,我制作了一个基于自动布局的轻量级UITextView子类,它根据用户输入的大小自动增长和缩小,并且可以通过最大和最小高度进行约束 - 所有这些都没有一行代码.

主要用于"界面"构建器,仅适用于"自动"布局

https://github.com/MatejBalantic/MBAutoGrowingTextView

  • @KatedralPillon该存储库中的代码根据MIT许可证进行许可,MIT许可证是可用的最不受限制的开源许可证之一.资料来源:https://github.com/MatejBalantic/MBAutoGrowingTextView/blob/master/LICENSE.txt (4认同)