Получение значения из адаптера формы счетчика в другое действие и создание счетчика из этого значения - PullRequest
0 голосов
/ 11 октября 2019

Я хочу взять значение правильных ответов "qCorrrect" из моего счетчика, который находится в моем адаптере, на активность и сделать из него счетчик. У меня есть метод getUser_input, чтобы взять это значение и передать ButtonListener.But, когда я идучерез дебаггер "user_input" в моей кнопке Activity не показывает никаких значений

    @Override
    public void onBindViewHolder(@NonNull final ItemAdapter.MyHolder holder, int position) {

        holder.question.setText(mList.get(position).getQuestion());
        holder.category.setText(mList.get(position).getCategory());

        final ArrayList<String> questions=new ArrayList<>();

        qCorrect=mList.get(position).getCorrectAnswer();
        String qWrong= String.valueOf(mList.get(position).getIncorrectAnswers().get(0));
        String qWrong1= String.valueOf(mList.get(position).getIncorrectAnswers().get(1));
        String qWrong2= String.valueOf(mList.get(position).getIncorrectAnswers().get(2));

        questions.add(qCorrect);
        questions.add(qWrong);
        questions.add(qWrong1);
        questions.add(qWrong2);

        Collections.shuffle(questions);

        user_input=new String[mList.size()];

        final ArrayAdapter<String> arrayAdapter=
                new ArrayAdapter<String>(context,android.R.layout.simple_spinner_dropdown_item,questions);
        holder.spinner.setAdapter(arrayAdapter);


        holder.spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
            @Override
            public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {


                    if(holder.spinner.getSelectedItem().equals(qCorrect)){


                    user_input[position]=qCorrect;

                }
            }
            @Override
            public void onNothingSelected(AdapterView<?> parent) {

            }
        });

    }



                                    Button finshButton=findViewById(R.id.finishBtn);
                                    finshButton.setOnClickListener(new View.OnClickListener() {
                                        @Override
                                        public void onClick(View v) {

                                            int couter=0;

                                            String[] user_input=itemAdapter.getUser_input();

                                            for(int i=0;i<mQuestionList.size();i++){
                                                if(mQuestionList.get(i).getCorrectAnswer().equals(user_input[i])){
                                                    couter++;
                                                }
                                            }
                                            Toast.makeText
                                                    (QuestionsActivity.this, couter + "/" + mQuestionList.size() , Toast.LENGTH_SHORT).show();
                                        }
                                    });
...