Чат пузырь какао - PullRequest
       15

Чат пузырь какао

4 голосов
/ 11 января 2010

Я пытаюсь создать чат-чат уже около месяца ... (вы знаете, как в iChat или Tweetie). В какой-то момент я нашел ветку, в которой говорилось, что я могу использовать источник Twitterfon ... что я и сделал. Но я застреваю по нескольким причинам. Какие? Apple, похоже, не реализовала все методы, необходимые для расчета размера прямоугольника. Например: NSTextField не реализует метод, который позволяет мне дать NSRect для того, чтобы он вычислял лучший размер. Дело в том, что пузырчатые канаты Tweetie всегда идеальны. Я бросил ему строку, спрашивая, как он это сделал, но я не получил ответа. Хотя, я понимаю, потому что он используется в коммерческом приложении. Я думал, что с популярностью приложения SMS для iPhone (и iChat, или любого приложения, включая пузыри чата), кто-то, вероятно, сделает реализацию на OS X и сделает ее открытой. Я не очень опытный, и в основном у меня нет времени (школы), поэтому я работал над этим один месяц и не нашел решения.

Если бы кто-то создал вещь на Какао, они могли бы объяснить свое решение для этого? Или еще лучше, покажи какой-нибудь код ...

Ответы [ 3 ]

6 голосов
/ 11 января 2010

В AppKit NSString Additions есть методы измерения строк для рисования, а для более сложных целей вы можете использовать NSLayoutManager. См. Руководство по программированию текстового макета для получения дополнительной информации.

1 голос
/ 26 марта 2013

Посмотрите пример кода BubbleThingie , например, как выполнить маскировку изображения. В нем также есть пример того, как сделать текстовые всплывающие окна, используя UIButton или UILabel, и выполняет все вычисления размера. он также позволяет тонировать пузыри любого цвета.

enter image description here

1 голос
/ 13 января 2010

В качестве альтернативы вы можете использовать WebKit и HTML / CSS. Я полагаю, что именно так Adium достигает своих тем сообщений IM.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...