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

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

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

Слип работает не так как нужно - Программирование Android

21.12.2015, 12:22. Просмотров 165. Ответов 5
Метки нет (Все метки)

В чем проблема, когда слип отрабатывает кнопка висит в состоянии нажатия а не после того как все изменения прошли.
Я видимо не знаю как работает точно эта система, но такой вопрос, где мне поставить слип что бы он отрабатывал сразу после нажатия клавиши и всех изменений?
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
    @Override
    public void onClick(View v) {
            switch (v.getId()) {
            case R.id.button1:
                button1.setEnabled(false);
                button1.setText("X");
                try {
                    Thread.sleep(520);
                } catch (InterruptedException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
                break;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.12.2015, 12:22     Слип работает не так как нужно
Посмотрите здесь:

Button setPressed работает не так как задумано - Программирование Android
Добрый день! подскажите почему если я делаю две кнопки. Loader1 = (Button) findViewById(R.id.bt_Loader1); Loader2 = (Button)...

Как работает внедрение зависимостей, и зачем нужно его использовать? - Программирование Android
Как работает внедрение зависимостей? И в каких ситуациях, зачем нужно его использовать?Например если я объявил поле как @Inject то как к...

как расположить так элементы в xml - Программирование Android
Подскажите как можно расположить элементы (смотреть изображение), чтобы на любом разрешении всё растягивалось как надо и элементы...

Как отсортировать List? Подскажите что делаю не так - Программирование Android
class DocItemsListAdapter extends BaseAdapter { public DocItemsListAdapter() { } public int getCount() { int count = 0; ...

Вид spinner одинаково новый как на 2.3.4 так и на 4.0 версии - Программирование Android
Здравствуйте! Как можно сделать вид спинера одинаково новый как на 2.3.4 так и на 4.0 версии Android. Хочу чтобы было так и на...

PostDelayed можно ли в Runnable передавать аргумент, как-то так? - Программирование Android
Добрый день, форумчане гуру и прочие знающие люди! Помогите начинающему программеру! Есть метод .postDelayed который замечательно...

Как сделать так, чтобы Service работал после закрытия программы - Программирование Android
Здравствуйте! Никак не могу разобраться, как сделать так, чтобы Service работал после закрытия программы. Вот что я написал в...

Как сделать так, чтобы вводимый текст сразу же рисовался в canvas? - Программирование Android
Допустим, у меня в верхней части экрана EditText, а внизу область рисования. Я хочу, чтобы текст, введенный в EditText, одновременно...

Как зашифровать данные на клиенте так, что бы на сервере их можно было расшифровать? - Программирование Android
У меня есть TCP клиент под андроид на JAVA и TCP сервер windows С++. TCP протокол открытый. Я знаю есть библиотека java crypto и OPenSSL....

Ребят, как сделать так, что бы фокус с одного editText переключался на другой? - Программирование Android
Есть 4 editText как сделать так, что бы пользователь ввел один символ в один едит, а далее фокус переключается на другой едит. Т.е...

Как сделать так, чтобы при повороте устройства экран оставался вертикальным? - Программирование Android
Как сделать так, чтобы при повороте устройства экран оставался вертикальным? (Не смеяться, только начинаю) :)

Как в Android Studio сделать так, что пользователь вводил функцию f(x)=? и точку? - Программирование Android
А она считала значение в этой точке


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Pablito
2414 / 1859 / 583
Регистрация: 12.05.2014
Сообщений: 6,596
Завершенные тесты: 1
21.12.2015, 12:43     Слип работает не так как нужно #2
нельзя просто так взять и слипнуть основной поток приложения, обычно такие вещи делаются
- либо в отдельном потоке, если там долгоиграющие операции
- либо выполняют отложенное действие
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
    @Override
    public void onClick(View v) {
        switch (v.getId()) {
            case R.id.button1:
                final Button button = (Button) v;
                button.setEnabled(false);
                button.setText("X");
 
                button.postDelayed(new Runnable() {
                    @Override
                    public void run() {
                        button.setEnabled(true);
                        button.setText("lol");
                    }
                }, 520);
                break;
        }
    }
hell_hauptwerk
0 / 0 / 1
Регистрация: 23.03.2015
Сообщений: 84
21.12.2015, 13:49  [ТС]     Слип работает не так как нужно #3
Хмм, ща попробую

Добавлено через 10 минут
Ну допустим так, а можно ли таким образом отсрочить функцию resetfields?
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
static  void whoisvictories(Activity a) {
    SpotVictory sv = tiktakparser.whovictories();
        if( sv.victX){
        Toast toast = Toast.makeText(a.getApplicationContext(), 
                   "Victory X", Toast.LENGTH_SHORT); 
                toast.show(); 
 
                tiktakparser.resetfields(a);//вот эту функцию надо запустить через секунду, но раз слип не годиться, тогда как?
                MainActivity.flag = false;
        }
        else if( sv.victY )
        {
            Toast toast = Toast.makeText(a.getApplicationContext(), 
                       "Victory Y", Toast.LENGTH_SHORT); 
                    toast.show(); 
                    
                    tiktakparser.resetfields(a);//вот эту функцию надо запустить через секунду, но раз слип не годиться, тогда как?
                    MainActivity.flag = false;
        }
        else if(sv.draw){
            Toast toast = Toast.makeText(a.getApplicationContext(), 
                       "Draw", Toast.LENGTH_SHORT); 
                    toast.show(); 
                    
                    tiktakparser.resetfields(a);//вот эту функцию надо запустить через секунду, но раз слип не годиться, тогда как?
                    MainActivity.flag = false;
        }
    }
Pablito
2414 / 1859 / 583
Регистрация: 12.05.2014
Сообщений: 6,596
Завершенные тесты: 1
21.12.2015, 13:53     Слип работает не так как нужно #4
во-первых
запускать с отсрочкой можно десятком способов, например с помощью Timer и TimerTask
или просто стартовать отдельный поток со слипом (тупое решение)
hell_hauptwerk
0 / 0 / 1
Регистрация: 23.03.2015
Сообщений: 84
21.12.2015, 14:29  [ТС]     Слип работает не так как нужно #5
Хорошо, сейчас попробую

Добавлено через 33 минуты
Короч беда ошибки летят, забил на эту идею
Pablito
2414 / 1859 / 583
Регистрация: 12.05.2014
Сообщений: 6,596
Завершенные тесты: 1
21.12.2015, 14:30     Слип работает не так как нужно #6
правильно, монтажники и токари тоже нужны стране
Yandex
Объявления
21.12.2015, 14:30     Слип работает не так как нужно
Ответ Создать тему
Опции темы

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