uiviewでUIBezierpathを使用してメッセージバブルを描画します。ベジェパス内にテキストビューをレンダリングします。私の問題は、textviewにテキストを入力するときに、メッセージバブルのサイズを動的に大きくしたいのですが、それができません。どうすれば問題を解決できますか。
質問する
1541 次
1 に答える
2
次のように、UITextviewフレームサイズを基準にしてUIBezierpathのサイズを変更できます。
CGRect box = CGPathGetBoundingBox(bezierpath.CGPath)
CGFloat scaleX = textView.frame.size.width / box.frame.size.width;
CGFloat scaleY = textView.frame.size.height / box.frame.size.height;
CGAffineTransform transform = CGAffineTransformMakeScale(scaleX, scaleY);
CGPathRef intermediatePath = CGPathCreateCopyByTransformingPath(bezierpath.CGPath, &transform);
bezierPath.CGPath = intermediatePath;
CFRelease(intermediatePath);
お役に立てば幸いです。
于 2012-11-23T06:40:33.867 に答える