NGUI Popup List русский текст
|
|
Andruha93 | Дата: Понедельник, 21 Октября 2013, 22:59 | Сообщение # 1 |
частый гость
Сейчас нет на сайте
| Всем привет ! Не получается использовать NGUI-евский Popup List с русским текстом. Когда английский все нормально =(( Пробовал менять кодировку на UTF-8 у самого скрипта UIPopup List и у моего скрипта который выполняет какие то действия, но все равно никак Что можно сделать ???? Вот скрипт для совершения какого то действия в зависимости от выбранного пункта из списка (Этот список и состаит из русских слов):
Код using UnityEngine; using System.Collections;
public class PopurList : MonoBehaviour {
void OnSelectionChange (string nameList) { switch(nameList) { case "Камин" : Debug.LogWarning("Привет мир !!!"); break; case "Kamin" : Debug.LogWarning("Здарова хрен !!!"); break; //Работает только этот потому что английские буквы. } } }
|
|
| |
robertono | Дата: Понедельник, 21 Октября 2013, 23:10 | Сообщение # 2 |
Чокнутый Кот
Сейчас нет на сайте
| Andruha93, сменить кодировку всех скриптов через notepad++ на UTF 8 без BOM. С NGUI не знаком вообще. Так что предположение только это. Я знаю что Вы это уже делали но попробуйте это в нотпад++ и utf 8 БЕЗ bom. Попытка не пытка)
|
|
| |
BlackFix | Дата: Понедельник, 21 Октября 2013, 23:33 | Сообщение # 3 |
постоянный участник
Сейчас нет на сайте
| в настройках шрифта попробуйте поставить Unicode
CodeBits Interactive.
|
|
| |
KamiRonin | Дата: Вторник, 22 Октября 2013, 10:12 | Сообщение # 4 |
почти ветеран
Сейчас нет на сайте
| Цитата Andruha93 ( ) Что можно сделать ???? тут дело в самом C# вот, тут расклад по этому вопросу.
а у тебя атлас NGUI с русскоязычным шрифтом?? ну как элемент списка с "Камин" отображается? возможно, чтобы не заморачиваться - либо использовать Localize в NGUI, либо уйти от текстового представления в списках.
Мыслю - значит программирую... Конструктивная критика - умных ведет к совершенству... Великие умы обсуждают идеи, средние - обсуждают поступки, а малые - людей.
|
|
| |
Andruha93 | Дата: Вторник, 22 Октября 2013, 19:29 | Сообщение # 5 |
частый гость
Сейчас нет на сайте
| Цитата KamiRonin ( ) атлас NGUI с русскоязычным шрифтом?? Да да русскоязычный !
|
|
| |
KamiRonin | Дата: Вторник, 22 Октября 2013, 19:59 | Сообщение # 6 |
почти ветеран
Сейчас нет на сайте
| Цитата Andruha93 ( ) Да да русскоязычный ! up (либо локализацию, либо System.Text.UTF8Encoding)
Мыслю - значит программирую... Конструктивная критика - умных ведет к совершенству... Великие умы обсуждают идеи, средние - обсуждают поступки, а малые - людей.
|
|
| |
Andruha93 | Дата: Вторник, 22 Октября 2013, 23:39 | Сообщение # 7 |
частый гость
Сейчас нет на сайте
| Решил написать вот такой скрипт: Код using UnityEngine; using System.Collections;
public class PopurList : MonoBehaviour { public string UItext; void Update() { UItext = GetComponent<UIPopupList>().selection; Debug.LogWarning(UItext);//В консоль нормально выводиться русский текст if(UItext == "Камин")//Проверка не проходит !!!!! { Debug.LogWarning("Привет мир"); } if(UItext == "ddd")//А тут все нормально { Debug.LogWarning("Здарова"); } } }
Он вешается на сам PopupList Очень странно - не проходит именно проверка с русскими буквами
Добавлено (22.10.2013, 23:39) --------------------------------------------- Цитата KamiRonin ( ) System.Text.UTF8Encoding Эт для чего ?? Если для перекодировки скрипта, то я его уже перекодировал в Notepad++
Цитата KamiRonin ( ) либо локализацию Да вот с этим я думаю стоит по разбираться. У NGUI даже есть в примерах сцена с её использование (Example 10 - Localization) вчера весь день копал, но пока не очень удачно =(( Думаю завтра снова поиду воевать с ней
Сообщение отредактировал Andruha93 - Вторник, 22 Октября 2013, 23:41 |
|
| |
KamiRonin | Дата: Среда, 23 Октября 2013, 14:28 | Сообщение # 8 |
почти ветеран
Сейчас нет на сайте
| Цитата Andruha93 ( ) Очень странно - не проходит именно проверка с русскими буквами System.Text.UTF8Encoding Эт для чего ?? shy Если для перекодировки скрипта, то я его уже перекодировал в Notepad++
попробуй присвоить отдельной переменной ну например testStr значение "Камин", и поставь в условие UItext == testStr, увидишь результат будет тот же = 0. а если через дебугер посмотреть значение переменной (я у себя не занимался нотепадством++ ) testStr - оно будет сразу после присвоения - кракозяблами. поэтому берешь Encoding, декодируешь в правильную кодировку любой текст и все работает. просто сложности C# (ссылку я давал).
Мыслю - значит программирую... Конструктивная критика - умных ведет к совершенству... Великие умы обсуждают идеи, средние - обсуждают поступки, а малые - людей.
|
|
| |
Andruha93 | Дата: Среда, 23 Октября 2013, 23:19 | Сообщение # 9 |
частый гость
Сейчас нет на сайте
| Цитата KamiRonin ( ) берешь Encoding, декодируешь в правильную кодировку любой текст и все работает. Ага ну тогда буду экспериментировать... Если че то еще дальше буду поднимать эту тему так как спать не буду спокойно знаю что что то не решено.
|
|
| |