Внедрение смайликов в xcode

#iphone #cocoa-touch #ios4 #emoji #emoticons

#iPhone #cocoa-touch #ios4 #смайлики

Вопрос:

Я пытаюсь создать приложение, в котором я предоставляю пользователю свободу добавлять смайлики, как в GTalk (например: P 🙂 : (…). Но я не могу определить точный способ их обработки и отображения после ввода символов пользователем.

Пожалуйста, присылайте идеи для того же, поскольку любая форма помощи может привести к решению этой проблемы.

Комментарии:

1. «Внедрить эмоции в xcode»? Обычно я использую Xcode довольно эмоционально. Взлеты и падения при постоянном чередовании. 😉

2. @Manny Я еще ничего не пробовал, поскольку у меня нет никаких конкретных идей. Хотя я много искал в Интернете, но не получил никаких полезных советов или предложений … : (

Ответ №1:

Для ввода вы можете использовать пользовательские кнопки, задавая их названия в соответствии с представлением смайликов в юникоде. Iphone имеет встроенную поддержку для этого.

 [myButton setTitle:@"ue415" forState:UIControlStateNormal];
  

Для отображения в текстовом поле вам нужно обработать это как отдельный символ строки, чтобы вы могли объединить свой обычный текст с эмодзи.

Полный список смайликов приведен на этой странице: http://pukupi.com/post/1964

Редактировать: вы можете использовать таблицу преобразования

🙂 = 415 🙁 = 40e ….

Вы можете использовать эту таблицу преобразования с использованием изображений вместо символов юникода, но это очень сложно, если вы хотите объединить текст и изображения в одном абзаце. Вот пример использования списка свойств, если вы хотите использовать изображения

 <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
    <dict>
        <key>SparkSetVersion</key>
        <integer>1</integer>
        <key>Emoticons</key>
        <dict>
            <key>angry.png</key>
            <dict>
                <key>Equivalents</key>
                <array>
                    <string>amp;>:o</string>
                    <string>amp;>:-o</string>
                    <string>amp;>:O</string>
                    <string>amp;>:-O</string>
                    <string></string>
                </array>
                <key>Name</key>
                <string>Angry</string>
            </dict>
            <key>blush.png</key>
            <dict>
                <key>Equivalents</key>
                <array>
                    <string>:-[</string>
                </array>
                <key>Name</key>
                <string>Blush</string>
            </dict>
            <key>confused.png</key>
            <dict>
                <key>Equivalents</key>
                <array>
                    <string>?:|</string>
                </array>
                <key>Name</key>
                <string>Confused</string>
            </dict>
            <key>cool.png</key>
            <dict>
                <key>Equivalents</key>
                <array>
                    <string>B-)</string>
                </array>
                <key>Name</key>
                <string>Cool</string>
            </dict>
            <key>cry.png</key>
            <dict>
                <key>Equivalents</key>
                <array>
                    <string>:'(</string>
                    <string></string>
                </array>
                <key>Name</key>
                <string>Cry</string>
            </dict>
            <key>devil.png</key>
            <dict>
                <key>Equivalents</key>
                <array>
                    <string>]:)</string>
                </array>
                <key>Name</key>
                <string>Devil</string>
            </dict>
            <key>grin.png</key>
            <dict>
                <key>Equivalents</key>
                <array>
                    <string>:-D</string>
                    <string>:D</string>
                    <string></string>
                </array>
                <key>Name</key>
                <string>Grin</string>
            </dict>
            <key>happy.png</key>
            <dict>
                <key>Equivalents</key>
                <array>
                    <string>:-)</string>
                </array>
                <key>Name</key>
                <string>Happy</string>
            </dict>
            <key>laugh.png</key>
            <dict>
                <key>Equivalents</key>
                <array>
                    <string>:^0</string>
                </array>
                <key>Name</key>
                <string>Laugh</string>
            </dict>
            <key>love.png</key>
            <dict>
                <key>Equivalents</key>
                <array>
                    <string>:x</string>
                </array>
                <key>Name</key>
                <string>Love</string>
            </dict>
            <key>mischief.png</key>
            <dict>
                <key>Equivalents</key>
                <array>
                    <string>;</string>
                </array>
                <key>Name</key>
                <string>Mischief</string>
            </dict>
            <key>mischief.png</key>
            <dict>
                <key>Equivalents</key>
                <array>
                    <string>;</string>
                </array>
                <key>Name</key>
                <string>Mischief</string>
            </dict>

            <key>sad.png</key>
            <dict>
                <key>Equivalents</key>
                <array>
                    <string>:-(</string>
                    <string>:(</string>
                    <string></string>
                </array>
                <key>Name</key>
                <string>Sad</string>
            </dict>
            <key>smile.png</key>
            <dict>
                <key>Equivalents</key>
                <array>
                    <string>:-)</string>
                    <string>:)</string>
                    <string></string>
                </array>
                <key>Name</key>
                <string>Smile</string>
            </dict>
            <key>silly.png</key>
            <dict>
                <key>Equivalents</key>
                <array>
                    <string>:-p</string>
                    <string>:-P</string>
                    <string>:P</string>
                    <string>:p</string>
                    <string></string>
                </array>
                <key>Name</key>
                <string>Tongue</string>
            </dict>
            <key>cool.png</key>
            <dict>
                <key>Equivalents</key>
                <array>
                    <string>8-)</string>
                    <string></string>
                </array>
                <key>Name</key>
                <string>Cool</string>
            </dict>
            <key>wink.png</key>
            <dict>
                <key>Equivalents</key>
                <array>
                    <string>;-)</string>
                    <string>;)</string>
                    <string></string>
                </array>
                <key>Name</key>
                <string>Wink</string>
            </dict>
        </dict>
    </dict>
</plist>
  

Комментарии:

1. большое спасибо за ответ, обязательно попробую… снова спасибо!!