Гость
Форумы / Android [игнор отключен] [закрыт для гостей] / TextHighlighter() - как повысить скорость обработки / 11 сообщений из 11, страница 1 из 1
24.01.2020, 10:30
    #39918234
Romantiktj
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
TextHighlighter() - как повысить скорость обработки
Код работает:
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
  for(int oo=0; oo < editText5.length; oo++){


                new TextHighlighter()

                        .setBackgroundColor(Color.parseColor("#FFFF00"))
                        .setForegroundColor(Color.RED)
                        .addTarget(textView1)
                        .highlight(editText5[oo],TextHighlighter.BASE_MATCHER);
                }



Но когда массив слов большой то андроид "подвисает", я кажется for зря добавил , подскажите как "хайлатнуть" массив строк без использования for
...
Рейтинг: 0 / 0
24.01.2020, 11:16
    #39918268
wadman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
TextHighlighter() - как повысить скорость обработки
Romantiktj,

мне кажется или тут объект на каждую букву создается? Если да, то какой смысл?
...
Рейтинг: 0 / 0
24.01.2020, 12:07
    #39918306
Romantiktj
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
TextHighlighter() - как повысить скорость обработки
wadman,

Простите забыл предоставить массив слов : String[] editText5 = editText.getText().toString().split(" ");
То есть:

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
        String[] editText5 = editText.getText().toString().split(" ");

                for(int oo=0; oo < editText5.length; oo++){


                new TextHighlighter()

                        .setBackgroundColor(Color.parseColor("#FFFF00"))
                        .setForegroundColor(Color.RED)
                        .addTarget(textView1)
                        .highlight(editText5[oo],TextHighlighter.BASE_MATCHER);
                }



Каждый textView1 весит примерно 200Кб
...
Рейтинг: 0 / 0
24.01.2020, 13:11
    #39918345
wadman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
TextHighlighter() - как повысить скорость обработки
Задача какая?
Учебная или реальная?
Сколько всего textView одновременно на экране?
Они все одномоментно нужны?
...
Рейтинг: 0 / 0
24.01.2020, 13:31
    #39918362
Romantiktj
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
TextHighlighter() - как повысить скорость обработки
wadman,
Задача какая?
Учебная или реальная? реальная
Сколько всего textView одновременно на экране? только один textView открыт
Они все одномоментно нужны? нет

Два слова открываются быстро, при 4-х словах тормозит конкретно

Открываю в диалоге, некоторые тексты которые более 200 кб не передаются на новое активити , ну а на более 200Кб и не надобно хайлайтера мне хотя бы с 200Кб-ми разобратся
...
Рейтинг: 0 / 0
24.01.2020, 13:38
    #39918368
Romantiktj
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
TextHighlighter() - как повысить скорость обработки
Romantiktj,
Кстати пока мис тестирую на мобильном виртуальном устройстве для Windows 10, может быть глюки от Windows?
...
Рейтинг: 0 / 0
24.01.2020, 14:38
    #39918393
Romantiktj
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
TextHighlighter() - как повысить скорость обработки
Romantiktj,

Проверил на мобиле , дело вот в чем : если в массиве слов существует и , да , я

то выделяет все "и" во всех словах в textView1 то есть: да ша каша я блоко и р и ска

Проблемы здесь:

Код: java
1.
2.
.addTarget(textView1)
.highlight(editText5[oo],TextHighlighter.BASE_MATCHER);
...
Рейтинг: 0 / 0
24.01.2020, 15:22
    #39918414
wadman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
TextHighlighter() - как повысить скорость обработки
Можно другой попробовать https://github.com/nakshay/TextHighlighter
Тот может за раз массив слов взять. Может и опции есть для выделения отдельных слов между разделителями.
...
Рейтинг: 0 / 0
24.01.2020, 15:30
    #39918418
Romantiktj
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
TextHighlighter() - как повысить скорость обработки
wadman,

Спасибо рассмотрю, отпишусь, а щас временно пока так решил, вроде бы как не так уж зависает:

" "+editText5[oo]+" "


Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
      String[] editText5 = editText.getText().toString().split(" ");

               for(int oo=0; oo < editText5.length; oo++){


                new TextHighlighter()
                        .setForegroundColor(Color.YELLOW)
                        .addTarget(textView1)
                        .highlight(" "+editText5[oo]+" ",TextHighlighter.BASE_MATCHER);
                   

                }
...
Рейтинг: 0 / 0
24.01.2020, 16:51
    #39918462
wadman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
TextHighlighter() - как повысить скорость обработки
Romantiktj
" "+editText5[oo]+" "

Разделителями могут быть не только пробелы. Знаки препинания опять же.
...
Рейтинг: 0 / 0
27.01.2020, 08:15
    #39918946
Romantiktj
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
TextHighlighter() - как повысить скорость обработки
wadman,
Да, точно подметили, спасибо!
...
Рейтинг: 0 / 0
Форумы / Android [игнор отключен] [закрыт для гостей] / TextHighlighter() - как повысить скорость обработки / 11 сообщений из 11, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]