Форум программистов, компьютерный форум, киберфорум
Наши страницы

Анимация печатания текста в TextView - Программирование Android

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Программирование Android Как получить текст из ID http://www.cyberforum.ru/android-dev/thread1389673.html
У каждого виджета на активити есть свой уникальный id. При добавлении виджета нужно указать его id в виде строки. Как можно потом программно получить эту строку? Есть метод getID, но он же...
Программирование Android ADB не инициализируется как нужно Устновлена чистая Android Studio. Установлены все последние обновления. Стоит Java SDK 1.7. Пытаюсь создать пустой тестовый проект. При запуске приложения через эмулятор ADB не удается найти или... http://www.cyberforum.ru/android-dev/thread1389591.html
Почему у меня не добавляются <item> ? Программирование Android
Доброе утро. У меня не получается добавить новый элемент в ActionBar. Делаю, вроде, все правильно. А в итоге, элементы отображаются вот так: Изучаю андроид. Мучаюсь уже два дня, что я не так...
Высота EditText в фиксированных единицах Программирование Android
Высота TextView по-умолчанию при layout_height=wrap_content слишком большая, гораздо больше высоты текста. Если указать высоту, к примеру, "40dp", то становиться красивее и поля меньше занимают...
Программирование Android Есть идея для мобильного приложения, что дальше делать? http://www.cyberforum.ru/android-dev/thread1389514.html
у меня есть идея для мобильного приложения! что мне дальше делать? подскажите!
Программирование Android Как поместить surfaceview или glsurfaceview на "пол" экрана Вопрос в общем то в заголовке, возможно ли это? Чтобы вьюшка с surfaceview или glsurfaceview была на пол экрана? подробнее

Показать сообщение отдельно
YuraAAA
1577 / 1318 / 271
Регистрация: 25.10.2009
Сообщений: 3,438
Записей в блоге: 2
07.03.2015, 15:44
Ringov, наверн как-то так


Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
public class DelayedPrinter {
 
    public static void printText(final Word word, final TextView textView) {
        Random random = new Random(System.currentTimeMillis());
 
        int currentRandOffset = random.nextInt(word.offset);
        boolean addOrSubtract = random.nextBoolean();
        long finalDelay = addOrSubtract ? word.delayBetweenSymbols + currentRandOffset : word.delayBetweenSymbols - currentRandOffset;
        if (finalDelay < 0) finalDelay = 0;
 
        textView.postDelayed(new Runnable() {
            @Override
            public void run() {
                String charAt = String.valueOf(word.word.charAt(word.currentCharacterIndex));
                ++word.currentCharacterIndex;
                textView.setText(textView.getText() + charAt);
                if (word.currentCharacterIndex >= word.word.length()) return;
                printText(word, textView);
            }
        }, finalDelay);
    }
 
 
    public static class Word {
 
        private long delayBetweenSymbols;
        private String word;
        private int offset;
        private int currentCharacterIndex;
 
        public Word(long delayBetweenSymbols, String word) {
            if (delayBetweenSymbols < 0) throw new IllegalArgumentException("Delay can't be < 0");
            this.delayBetweenSymbols = delayBetweenSymbols;
            this.word = word;
        }
 
        public void setOffset(int offset) {
            this.offset = offset;
        }
    }
 
}
и вот вызов

Java
1
2
3
DelayedPrinter.Word word = new DelayedPrinter.Word(100, "Hello, word");
        word.setOffset(50);
        DelayedPrinter.printText(word, textView);
Делал на коленке, не проверял. Так что проверьте сами
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru