Как я могу получить значение из поля «Редактировать текст» в уже существующий список строк? - PullRequest
0 голосов
/ 21 апреля 2019

У меня есть приложение, в котором я пытаюсь заставить пользователей ответить на ряд вопросов при регистрации учетной записи. Затем им будут заданы эти вопросы в качестве теста памяти. У меня уже есть функция открытых вопросов, но ответы на вопросы жестко закодированы. Я хочу получить значения, которые пользователь будет вводить при регистрации, в строке «ответы».

Код для базы данных вопросов и ответов:

package com.example.memory;

public class QuestionDatabase {

    public static String[] questions = {
            "What time did you wake up?",
            "What do you do first when you wake up?",
            "What did you have for breakfast?",
            "What time did you go to bed last night?",
            "What is your favorite colour?",
            "What is your favorite movie?",
            "What is your favorite food?",
    };

    public static String[] answers = {

            "9",
            "Bathroom",
            "Coffee",
            "11",
            "Blue",
            "Avengers",
            "Pizza",
    };

}

А вот код для вопроса:

package com.example.memory;

public class Q1 extends AppCompatActivity {

    Button save1;
    EditText ans1;
    String answer1;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_q1);

        save1 = (Button) findViewById(R.id.save1);
        ans1 = (EditText) findViewById(R.id.ans1);
        answer1 = ans1.getText().toString();

        save1.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                save1();
            }
        });


    }

    public void save1() {
        Intent intent = new Intent(this, LoginActivity.class);
        intent.putExtra("", ans1.getText().toString());
        startActivity(intent);
    }
}

Как мне получить значение, введенное в "ans1" в разделе ответов String [] базы данных QuestionD.

Ответы [ 2 ]

2 голосов
/ 21 апреля 2019

Лучше использовать ArrayList of Strings вместо String Array

ArrayList<String> stringList = new ArrayList<>();
stringList.add("you String");
0 голосов
/ 21 апреля 2019

Используйте HashSet для Strings вместо String array.Таким образом, вы сможете легко добавлять строки, и в структуре данных ответов не будет дублирования строк.

HashSet<String> answers = new HashSet<String>();  
set.add("input string); 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...