有一个奇怪的问题,如果你创建一个UITextView
创建后立即旋转它,某些线条或字符将不可见!尝试这个:
myTextView.font = UIFont.boldSystemFontOfSize(20)
myTextView.text = "Hello world wht the hell\nhello mrs lorem ipum!"
let maxsize = CGSizeMake(700, 700)
let frame = myTextView.sizeThatFits(maxsize)
myTextView.frame = CGRectMake(200, 200, frame.width, frame.height)
view.addSubview(myTextView)
myTextView.transform = CGAffineTransformMakeRotation(CGFloat(M_PI_2))
Result:
你看?大部分都丢失了!但如果你remove myTextView.transform = CGAffineTransformMakeRotation(CGFloat(M_PI_2))
并通过按钮运行它就可以了:
可以在git上查看代码:https://github.com/maysamsh/rotateTextView https://github.com/maysamsh/rotateTextView
作为解决方法,请尝试设置您的UITextView
在另一个简单的UIView
,然后旋转这个UIView
.
它应该有帮助,因为这样,UITextView
应该像没有旋转一样做出反应(因此您可以将其设置为超级视图的插入约束)
那么你只需要关心超级视图的形式。
其他解决方案
myTextView.font = UIFont.boldSystemFontOfSize(20)
myTextView.text = "Hello world wht the hell\nhello mrs lorem ipum!"
let maxsize = CGSizeMake(700, 700)
let frame = myTextView.sizeThatFits(maxsize)
myTextView.frame = CGRectMake(200, 200, frame.width, frame.height)
view.addSubview(myTextView)
let delayTime = dispatch_time(DISPATCH_TIME_NOW, Int64(0.1 * Double(NSEC_PER_SEC)))
dispatch_after(delayTime, dispatch_get_main_queue()) {
myTextView.transform = CGAffineTransformMakeRotation(CGFloat(M_PI_2))
}
有点脏,但应该可以,用户可能会看到一个小剪辑,但大多数情况下他甚至不应该看到它。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)