Форум программистов, компьютерный форум CyberForum.ru

Программирование Android

Войти
Регистрация
Восстановить пароль
 
JokerZ
0 / 0 / 0
Регистрация: 15.10.2015
Сообщений: 46
#1

Задержка при выводе картинки в button? - Android

19.10.2015, 04:40. Просмотров 184. Ответов 6
Метки нет (Все метки)

Задержка при выводе картинки в button, не получается...

Цикл выводит, 5 картинок в button.
пробовал thread.sleep(1000);
не работает, останавливает весь поток, потом конечный результат.

почитал и поискал темы, многие сталкиваются с такой проблемой.

как решить не знаю.
понял что нужно использовать таймер, но как не знаю.. т.к. новичек

подскажите что делать..
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.10.2015, 04:40     Задержка при выводе картинки в button?
Посмотрите здесь:

Android Как менять картинки на кнопке при нажатии?
Как сделать вызов фиксированного номера при нажатии button Android
Android Обращение к объекту (button) по id, который будет создан при запуске приложения
Android Вывод картинки при выполнении условия
Передвижение картинки при нажатии на экран Android
При скролинге листвью, картинки пропадают Android
Задержка выполнения цикла Android
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
YuraAAA
1564 / 1306 / 269
Регистрация: 25.10.2009
Сообщений: 3,424
Записей в блоге: 2
19.10.2015, 11:50     Задержка при выводе картинки в button? #2
JokerZ,
Java
1
2
3
4
5
6
7
 final ImageView imageView = (ImageView) findViewById(R.id.image);
        imageView.postDelayed(new Runnable() {
            @Override
            public void run() {
                imageView.setImageResource(R.drawable.ic_launcher);
            }
        }, 5000l);
JokerZ
0 / 0 / 0
Регистрация: 15.10.2015
Сообщений: 46
19.10.2015, 17:37  [ТС]     Задержка при выводе картинки в button? #3
Цитата Сообщение от YuraAAA Посмотреть сообщение
Код Java(TM) 2 Platform Standard Edition 5.0Выделить код
1
2
3
4
5
6
7
*final ImageView imageView = (ImageView) findViewById(R.id.image);
* * * * imageView.postDelayed(new Runnable() {
* * * * * * @Override
* * * * * * public void run() {
* * * * * * * * imageView.setImageResource(R.drawable.ic_launcher);
* * * * * * }
* * * * }, 5000l);
Спасибо.

вот мой код в чем ошибка?



Java
1
2
3
4
5
6
7
8
9
10
11
12
13
  img[0]=R.drawable.a1;
                 img[1]=R.drawable.a2;
                 img[2]=R.drawable.a3;
 
                                     for(int i=0;i<5;i++)
                         { 
                            button1.postDelayed(new Runnable() {
                                @Override
                                public void run() {
                                    button1.setBackgroundResource(img[i]);
                                }
                            }, 5000l);                       
                                                 }
Spelcrawler
523 / 493 / 111
Регистрация: 12.03.2014
Сообщений: 1,646
Завершенные тесты: 1
19.10.2015, 17:51     Задержка при выводе картинки в button? #4
JokerZ, в том что вы запускаете 5 раз подряд(одновременно) код, который сработает через 5 секунд. Ну он и срабатывает 5 раз подряд, через 5 секунд)
JokerZ
0 / 0 / 0
Регистрация: 15.10.2015
Сообщений: 46
19.10.2015, 17:54  [ТС]     Задержка при выводе картинки в button? #5
Цитата Сообщение от Spelcrawler Посмотреть сообщение
JokerZ, в том что вы запускаете 5 раз подряд(одновременно) код, который сработает через 5 секунд. Ну он и срабатывает 5 раз подряд, через 5 секунд)
Так мне нужно вывести в button1 5 разных картинок с задержкой 5 секунд.
bastrakov
91 / 91 / 14
Регистрация: 10.10.2015
Сообщений: 307
Записей в блоге: 1
19.10.2015, 21:09     Задержка при выводе картинки в button? #6
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
public class MainActivity extends AppCompatActivity {
 
    private ImageButton imageButton;
    private int i = 0;
    private int [] imgs = {
            R.drawable.i1,
            R.drawable.i2,
            R.drawable.i3,
            R.drawable.i4,
            R.drawable.i5
    };
 
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
 
        imageButton = (ImageButton) findViewById(R.id.imageButton);
        new BkgTask().execute();
    }
 
    private class BkgTask extends AsyncTask<String, Void, String> {
        @Override
        protected String doInBackground(String... parms) {
            try {
                Thread.sleep(5000);
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
            return null;
        }
        @Override
        protected void onPostExecute(String result) {
            imageButton.setImageResource(imgs[i++]);
            if (i<5)
                new BkgTask().execute();
        }
    }
 
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.10.2015, 14:36     Задержка при выводе картинки в button?
Еще ссылки по теме:

Ошибка при нажатии кнопки button Android
Android NetworkOnMainThreadException при сохранении картинки в битовый массив
При выводе ArrayList<T> выводит последние элементы Android
Android Переход на разные активити при нажатии button в зависимости от checkbox
Задержка звука при стриме по wifi Android

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
YuraAAA
1564 / 1306 / 269
Регистрация: 25.10.2009
Сообщений: 3,424
Записей в блоге: 2
20.10.2015, 14:36     Задержка при выводе картинки в button? #7
bastrakov, JokerZ,

Так лаконичнее будет
Java
1
2
3
4
5
6
7
8
9
10
public void run() {
        imageButton.postDelayed(new Runnable() {
            @Override
            public void run() {
                imageButton.setImageResource(imgs[i]);
                ++i;
                if (i < 5) imageButton.postDelayed(this, 5000);
            }
        }, 5000);
    }
Yandex
Объявления
20.10.2015, 14:36     Задержка при выводе картинки в button?
Ответ Создать тему
Опции темы

Текущее время: 05:30. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru