Я пытаюсь провести различие между некоторыми цветами фона в моем приложении. Какая самая большая связь с этим фоном? Это то, что внутри него есть текст,
Так что я подумал о создании алгоритма, который будет делать следующее:
- Получить первый символ строки
- Разделить все персонажи на 5 групп (может получить все символы, подсчитать и разделить на 5, затем выбрать ярость) .. Например:
- От A -> E
- От E -> I
- Из I -> N
- Из N -> S
- Из S -> Z
И из этих групп я может определить, к какой группе принадлежит текст, и установить цвет фона для каждой из этих 5 групп:
Например, у меня есть текст «Hello», тогда это из группы № 2, кому фон цвет # ff0000
У меня есть небольшая проблема в том, что если символ не из аз (возможно, число или арабский c символ), то это будет полная отдельная группа (?)
Есть ли лучший алгоритм для этого случая? Если нет, я хотел бы знать, как сделать вышеупомянутый алгоритм, используя Objective- C
УДЕРЖИВАЙТЕ ОТМЕТЬТЕ: Я не хочу случайный ЦВЕТ! Я хочу, чтобы это основывалось на набор цветов, которые я ограничил!
Я нашел это: http://randomstringtocsscolor.com/, но это генератор случайных чисел.
Что я пробовал?
Используя NSString
characterAtIndex:
, я могу получить значение цифры c символа, а затем легко сравнить его
NSString *text = @"Hello";
unichar firstCharValue = [text characterAtIndex:0];
if(firstCharValue >= 5){
// background color Broup A
} else if(firstCharValue >= 10){
// background color Group B
} else if(firstCharValue >= 15){
// background color Group C
} else {
// background color default (unknown characters)
}
Что плохого в этом это решение?
Не очень удобно с точки зрения проверки, если число больше или равно X, и не очень хорошо с неизвестными символами, мне интересно узнать больше о более удобный алгоритм.