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

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

Войти
Регистрация
Восстановить пароль
 
Flash_2oo9
3 / 3 / 0
Регистрация: 31.10.2012
Сообщений: 142
#1

Динамическая работа с EditText - Программирование Android

11.07.2014, 14:02. Просмотров 554. Ответов 0
Метки нет (Все метки)

Добрый день, ув. форумчани.
Решил написать интерпретатор для BrainFuck. Все бы ничего, но не могу во время выполнения программы вывести необходимые данные в editText или считать данные для него.
Вот на примере (это не сам интерпретатор, а пример который объясняет суть проблемы):

Допустим в enterText я ввел различные символы. Нажимаю на OK. Программа проверяет если символ не равен 'e', то выводит его в outText, если же равен, то ждет ввода нового символа в enterSymbol и нажатия клавиши Ok.

например, входные данные:"12e4", выходные: "12_новый_символ_4"

Вот код:
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
43
44
45
46
47
48
49
50
51
public class MainActivity extends ActionBarActivity {
 
    private EditText enterText;
    private EditText enterSymbol;
    private EditText outText;
    private Button btnOk;
    private Button btnEnterSymbolOk;
    private boolean flag = false;
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
 
        enterText = (EditText) findViewById(R.id.enterText);
        enterSymbol = (EditText) findViewById(R.id.enterSymbol);
        outText = (EditText) findViewById(R.id.outText);
        outText.setText("dsg");
        btnOk = (Button) findViewById(R.id.btnOk);
        btnEnterSymbolOk = (Button) findViewById(R.id.btnOk);
    }
 
    public void onClickBtnOk(View v){
        char[] inputData = enterText.getText().toString().toCharArray();
        readInputData(inputData);
    }
 
    public void onClickBtnEnterSymbolOk(View v){
        flag = true;
    }
 
    private void readInputData(char[] id){
        int index = 0;
        while(index<id.length){
            if(id[index] == 'e'){
                while(flag==false){
 
                }
                id[index] = enterSymbol.getText().toString().charAt(0);
            }
            else
            {
                String s = ""+id[index];
                outText.setText(s);
                index++;
                flag = false;
            }
        }
 
    }
}
Вся проверка, ввод и вывод осуществляются в readInputData(char[] id).

Проблема первая: outText.setText(s);
выводит текст, но не сразу, а ждет окончания цикла. А необходимо, чтобы цикл приостанавливался, выводился текст и дальше цикл продолжал работать.
Проблема вторая: так же само необходимо приостановить цикл считать символ и продолжить его.
Как мне это сделать?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.07.2014, 14:02     Динамическая работа с EditText
Посмотрите здесь:

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

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

Добавить сторонний edittext - Программирование Android
Пытаюсь добавить библиотеку showhidepasswordedittext в свой проект. Gradle выдает ошибку сборки. Project gradle // Top-level build...

Отловить изменение в EditText - Программирование Android
Как узнать символы, которые пользователь ввел в edittext? Т.е например, пользователь ввел &quot;яндекс&quot; И нужно каждый символ нужно приравнять...

EditText удалять спецсимволы - Программирование Android
Как при получении значения с EditText удалять спец. символы (к примеру эти - /?.,+=-{}:;&quot;'!@#$%^&amp;*()|\№) т.е оставляя буквы и...

Сохранение текста в EditText - Программирование Android
В наличии: Активность А с EditText1 и TextViev, и Активность Б с EditText2 и Button. Как реализовать сохранение уже введенного текста в...

Создание ListView из EditText - Программирование Android
Выдает ошибку в строке при создании адаптера. Пишет, что не распознает конструкцию ArrayAdapter Ниже прилагаю код. Список должен...

Пересчет строки EditText - Программирование Android
Доброго времени суток форумчане! В общем дело такое есть некий edittext в который записываются ответы на математические действия. inputtype...

Обработка нажатия EditText - Программирование Android
Необходимо реализовать поля ввода дат для задания периода. Так как надо по дизайну чтобы подсказка всплывала как в TextInputLayout,...

Номера строк EditText - Программирование Android
Вырыл такой код (в гугле, точнее не скажу, не помню) @Override protected void onDraw(Canvas canvas) { int baseline =...

Сравнение EditText и String - Программирование Android
Сравнение строк в jave можно осуществить таким образом: String str1 = &quot;abc&quot;; String str2 = &quot;abc&quot;; str1.equals(str2); Но когда...

Из EditText в БД записывается мусор - Программирование Android
При сохранении данных из EditText в БД, получается вон та фигня, что на картинке: Код: for (int i = 0; i &lt;= masOfEditName.size() -...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

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