Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
The_Prodigy
0 / 0 / 0
Регистрация: 24.07.2012
Сообщений: 4
#1

Некорректно работает поток в Activity - Программирование Android

15.09.2013, 13:28. Просмотров 344. Ответов 1
Метки нет (Все метки)

Что неправильно в данном коде? Когда я начинаю вводить текст в EditText, приложение зависает. Думаю Вам понятно, что делает данный код, Если EditText постой, кнопка неактивна, и наоборот.
http://www.cyberforum.ru/android-dev/thread2255219.html
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
protected void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.x3);
        View b = findViewById(R.id.x3B);
        b.setOnClickListener(this);
        Thread t = new Thread(new Runnable()
        {
              public void run()
              {
                  EditText ed11 = (EditText) findViewById(R.id.ed11);
                  Button but = (Button) findViewById(R.id.x3sarrusB);
                  
                  while(true)
                  {
                      if(ed11.length() == 0)
                          but.setEnabled(false);
                      else
                          but.setEnabled(true);
                  }
              }
            });
            t.start();
    }
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.09.2013, 13:28
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Некорректно работает поток в Activity (Программирование Android):

Приложение зависает, если свернуть и развернуть Activity или перейти на другую Activity
У меня в параллельном потоке происходит куча apply() Решение использовать...

Android - Передача данных с одного Activity на другое Activity
Здравствуйте , возникла необходимость получения числовых (int и float ну или...

Как из одного Activity перенести фотку в другое Activity?
Собственно необходимо отобразить фотографию в activity2, которую загрузили в...

Изменение layout-элементов одного activity из другого activity
Здравствуйте! Я хочу изменить размер или цвет текста TextView в одном...

Из одного Activity получить значение другого Activity
Запускаю активити: public class MainActivity extends Activity { ... ......

1
haribo
41 / 41 / 3
Регистрация: 26.05.2013
Сообщений: 160
15.09.2013, 15:06 #2
Не надо так писать код.
Есть такой паттерн программирования Observer (Слушатель).
С учетом его применения и возможностей android sdk, можно сделать следующим образом:
Пишем метод проверки наличия текста:
Java
1
2
3
private boolean checkEditText(EditText edit) {
    return edit.getText().length() == 0;
}
Далее пишем метод обновления кнопки:
Java
1
2
3
4
5
6
void updateButtonState() {
    if (checkEditText(edit1) && checkEditText(edit2)) {
        button.setEnabled(false);
    } else { 
        button.setEnabled(true);
    }
Далее Оверрайдим следующие методы для EditText и пишем в них необходимую логику.
Java
1
2
3
beforeTextChanged(CharSequence s, int start, int count, int after)
onTextChanged(CharSequence s, int start, int before, int count)
afterTextChanged(Editable s)
Если нужно расписать логику для этих методов - обращайся.
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.09.2013, 15:06
Привет! Вот еще темы с решениями:

Как добавить cardview в activity с другой activity?
У меня есть активность(1), куда нужно добавить cardview. в этой же активности...

Из одной Activity запустить функцию другой Activity
например есть Activity2 которое я показываю в Dialog окошке, там у меня...

Как в Navigation Drawer Activity засунуть Activity?
Здравствуйте! у меня такая проблема navigation drawer activity работает только...

Вызвать из одной activity функцию другой activity
вызвать из одного activity функцию другой activity Подскажите, можно ли такое...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

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