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

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

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

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

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

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

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

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

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

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

Переменная в выводе картинки из ресурсов - Программирование Android
Доброго всем времени суток, есть небольшой вопрос/проблема, я андроид ява я новичок и столкнулся с такой проблемой есть код ...

Задержка звука при стриме по wifi - Программирование Android
Всем доброго дня. Написал апу, типо рации, работает без инета. Тещу у себя дома, у меня 2 девайса, работает прекрасно, 1 сек задержки...

Как в Android положить один объект (button) на другой (button)? - Программирование Android
Скажите, как можно положить один объект на другой, так что бы они оба были кликабельными? У менять есть две кнопки примыкающие друг к...

При выводе ArrayList<T> выводит последние элементы - Программирование Android
Класс Words:public class Words { public int Id; public String WordEnglish; public String WordRussian; public String...

Ошибка при нажатии кнопки button - Программирование Android
Добрый день, прошу прощения за такой глупый вопрос. Только начал разбираться, и тут сразу ловлю ступор. Приложение - в одно поле ввести...

Переход на разные активити при нажатии button в зависимости от checkbox - Программирование Android
Я написал код, который при нажатии на кнопку переходит на другой activity. package com.example.personalhelpergastritis; import...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
YuraAAA
1574 / 1316 / 271
Регистрация: 25.10.2009
Сообщений: 3,438
Записей в блоге: 2
19.10.2015, 11:50 #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);
0
JokerZ
0 / 0 / 0
Регистрация: 15.10.2015
Сообщений: 46
19.10.2015, 17:37  [ТС] #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);                       
                                                 }
0
Spelcrawler
526 / 496 / 111
Регистрация: 12.03.2014
Сообщений: 1,649
Завершенные тесты: 1
19.10.2015, 17:51 #4
JokerZ, в том что вы запускаете 5 раз подряд(одновременно) код, который сработает через 5 секунд. Ну он и срабатывает 5 раз подряд, через 5 секунд)
0
JokerZ
0 / 0 / 0
Регистрация: 15.10.2015
Сообщений: 46
19.10.2015, 17:54  [ТС] #5
Цитата Сообщение от Spelcrawler Посмотреть сообщение
JokerZ, в том что вы запускаете 5 раз подряд(одновременно) код, который сработает через 5 секунд. Ну он и срабатывает 5 раз подряд, через 5 секунд)
Так мне нужно вывести в button1 5 разных картинок с задержкой 5 секунд.
0
bastrakov
91 / 91 / 14
Регистрация: 10.10.2015
Сообщений: 307
Записей в блоге: 1
19.10.2015, 21:09 #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();
        }
    }
 
}
0
YuraAAA
1574 / 1316 / 271
Регистрация: 25.10.2009
Сообщений: 3,438
Записей в блоге: 2
20.10.2015, 14:36 #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);
    }
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.10.2015, 14:36
Привет! Вот еще темы с ответами:

Как сделать вызов фиксированного номера при нажатии button - Программирование Android
как сделать так чтобы при нажатии батона в приложении автоматически набирался номер (один номер например +380671234567)

Обращение к объекту (button) по id, который будет создан при запуске приложения - Программирование Android
Здравствуйте. Подскажите как реализовать обработчик кнопок, коотрые создаются циклом. Т.е. кнопки делаются в цикле, им присваивается id....

Передвижение картинки при нажатии на экран - Программирование Android
подскажите как сделать чтоб картинка начала двигаться в сторону нажатия экрана public class MainActivity extends Activity { ...

При скролинге листвью, картинки пропадают - Программирование Android
День добрый. Использую свой кастом адаптер для листвью(см. приложение). При скролинге листвью, картинки пропадают(те которые ушли за...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
20.10.2015, 14:36
Ответ Создать тему
Опции темы

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