iMessageに似た、Mac OS用のチャットアプリケーションをビルドしています。バブルでサイズ変更可能なテキストビューを実装するにはどうしたらよいでしょうか。つまり、サイズを変更すると、チャットウィンドウの泡がテキストのサイズに変わります。任意のアイデア、リンクは非常に便利です。助けてくれてありがとう)サイズ変更可能な泡のあるOS Xチャットアプリ
答えて
テキストのサイズを変更するには、自動レイアウトを使用します。 MYBubbleView
を含むNSScrollViewがNSTextView
を含む場合、スクロールビューのコンテンツビューとバブルビューのプロパティのleftAnchor
とrightAnchor
プロパティを使用して、NSLayoutConstraint
を追加し、テキストビューとバブルビューのすべてのエッジ間に制約を追加できます。その後、バブルビューをトップ/プレビューに固定します。
また、NSTextView
をラップするように設定してください。テキストビューの本来のサイズの幅は、幅を塗りつぶすように設定され、内在する高さはテキスト全体に収まるように設定されます。
は、私が以前にそれがバブルを描画についてだと思ったので、私は最初にこの答えを与えた:
あなたはMessages.appを見れば、あなたは彼らが円形泡じゃないことがわかります。基本的には、互いに重ね合わせたいくつかの図形で構成されています。丸みを帯びた四角形と、先端のベジェ曲線。
テキストのNSTextViewを取り、丸みのある四角形とそのdrawRectメソッドの先端を描画するカスタムビューのサブビューにし、自動レイアウトの制約を使用してバブルビューのサイズを変更できるようにする必要がありますテキストビューとウィンドウ幅のテキストビューを使用します。
また、バブルビューのホストに塗りつぶしと丸みのあるコーナーを持つCALayerと、チップのイメージ(またはチップのaCAShapeLayer)を持つこともできますが、drawRectは簡単なアプローチです。
自体が大きな問題ではなく、実際の問題はテキストのサイズ変更です。ウィンドウのサイズを変更すると、泡のテキストのサイズも変更されるはずです – user3092701
- 1. サイズ変更可能なウィジェット
- 2. サイズ変更可能なバブルチャート
- 3. サイズ変更可能な要素を持つサイズ変更可能なjQuery UIウィジェット
- 4. jQueryのUIのサイズ変更可能なファイアウィンドウのサイズ変更イベント
- 5. jQueryサイズ変更可能なプラグイン、高さのみのサイズ変更
- 6. サイズ変更可能なビューの丸みのあるコーナー
- 7. JavaFXのサイズ変更可能なBorderPane
- 8. WPFツールキットオートコンプリートボックスのサイズ変更可能なポップアップ
- 9. WPFのサイズ変更可能なダイアログウィンドウ
- 10. textarea jQueryUIのサイズ変更可能なダイアログ
- 11. サイズ変更可能なdivの側
- 12. jQueryのサイズ変更可能なnavbar
- 13. Pygletのサイズ変更可能なバッチ
- 14. サイズ変更可能な高さのDataGrid
- 15. SSRSのサイズ変更可能な配列
- 16. サイズ変更可能なGridViewの列
- 17. jqueryのサイズ変更可能なプラグイン
- 18. electron.jsのサイズ変更可能なウィンドウ
- 19. div内のサイズ変更可能なdiv
- 20. jQueryのサイズ変更可能なパネル
- 21. サイズ変更可能な回転可能な長方形D3?
- 22. WPFのサイズ変更可能な(ズーム可能な)インターフェイス
- 23. サイズ変更可能UIView
- 24. nstoolbaritemサイズOS X
- 25. サイズ変更可能なテーブルレイアウトパネル(C#
- 26. jQuery UIサイズ変更可能なピンチ
- 27. Raphael JSサイズ変更可能な矩形
- 28. wxPythonを:サイズ変更可能な列
- 29. サイズ変更可能なフローティングエレメントです。
- 30. サイズ変更可能な属性は
こんにちは、JSQMessageViewControllerのディスカッションに基づいて、私はMacOS上で動作するUIのようなiMessageを持つことができる少しのトリックを追加すると思います。このスレッドを確認してください:https://github.com/jessesquires/JSQMessagesViewController/issues/1929 これはhttp://chameleonproject.org/ – Fennec