Как я могу очистить случайные EditTexts? - PullRequest
0 голосов
/ 22 января 2020

У меня есть девять EditTexts, которые показывают случайные числа.

Метод generateSquares устанавливает случайным образом тексты EditTexts с номерами от 1 до 9 в неупорядоченном списке.

Затем я хочу очистить некоторые EditTexts при запуске программы в методе onCreate.

Я хочу очистить 2,3,4 или 5 из девяти EditTexts случайным образом.

После запуска программы я хочу очистить случайным образом, например, два editTexts.

Это будут EditText1 + EditText4 или

EditText2 + 9; или

EditText3 + EditText6;

Если очистить алгоритм 3 EditText, например, будет

EditText1 + EditText4 + EditText9.

Что мне нужно, так это после того как EditTexts установит текст, удалите случайным образом 2, 3, 4 или 5 EditTexts

private EditText e1;
private EditText e2;
private EditText e3;
private EditText e4;
private EditText e5;
private EditText e6;
private EditText e7;
private EditText e8;
private EditText e9;

//Set Text of EditTexts randomly (numbers from 1 to 9)

public void generateSquares() {


    // Generates a random array to SetText of EditTexts randomly
    Integer [] shuffleArray = new Integer[] { 1,2,3,4,5,6,7,8,9 };
    List<Integer> shuffleList = Arrays.asList(shuffleArray);
    Collections.shuffle(shuffleList);
    listaDesordenada.toArray(shuffleList);

    String arrayItem1 = Integer.toString(shuffleArray[0]);
    String arrayItem2 = Integer.toString(shuffleArray[1]);
    String arrayItem3 = Integer.toString(shuffleArray[2]);
    String arrayItem4 = Integer.toString(shuffleArray[3]);
    String arrayItem5 = Integer.toString(shuffleArray[4]);
    String arrayItem6 = Integer.toString(shuffleArray[5]);
    String arrayItem7 = Integer.toString(shuffleArray[6]);
    String arrayItem8 = Integer.toString(shuffleArray[7]);
    String arrayItem9 = Integer.toString(shuffleArray[8]);


    t1.setText(arrayItem1);
    t2.setText(arrayItem2);
    t3.setText(arrayItem3);
    t4.setText(arrayItem4);
    t5.setText(arrayItem5);
    t6.setText(arrayItem6);
    t7.setText(arrayItem7);
    t8.setText(arrayItem8);
    t9.setText(arrayItem9);

}

 //Clear randomly EditTexts:

?

1 Ответ

1 голос
/ 22 января 2020

Для простоты вы можете сгенерировать случайное значение int maxCount , которое сообщит вам, сколько EditTexts будет очищено. На следующем шаге (например, l oop) вы будете случайным образом генерировать int index , который сообщит вам, какой индекс (из ранее созданного массива) очистить. Вы можете сохранить очищенные в некотором массиве, чтобы избежать многократного удаления одного и того же индекса. Вам этого достаточно?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...