Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/206.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 将值从微调器窗体适配器获取到另一个活动,并从该值生成计数器_Android_Counter_Android Spinner_Android Recyclerview - Fatal编程技术网

Android 将值从微调器窗体适配器获取到另一个活动,并从该值生成计数器

Android 将值从微调器窗体适配器获取到另一个活动,并从该值生成计数器,android,counter,android-spinner,android-recyclerview,Android,Counter,Android Spinner,Android Recyclerview,我想从适配器中的微调器中获取正确答案“qcorrect”的值,并使其成为活动的计数器。我有getUser_input方法获取该值并传入ButtonListener。但是当我在按钮活动中通过“user_input”去bug时,没有显示任何值 @Override public void onBindViewHolder(@NonNull final ItemAdapter.MyHolder holder, int position) { holder.questio

我想从适配器中的微调器中获取正确答案“qcorrect”的值,并使其成为活动的计数器。我有getUser_input方法获取该值并传入ButtonListener。但是当我在按钮活动中通过“user_input”去bug时,没有显示任何值

    @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();
                                        }
                                    });
@覆盖
public void onBindViewHolder(@NonNull final ItemAdapter.MyHolder,int位置){
holder.question.setText(mList.get(position.getQuestion());
holder.category.setText(mList.get(position.getCategory());
最终ArrayList问题=新建ArrayList();
qCorrect=mList.get(position.getCorrectAnswer();
String qError=String.valueOf(mList.get(position).getIncorrectAnswers().get(0));
String QError1=String.valueOf(mList.get(position.getIncorrectAnswers().get(1));
String QError2=String.valueOf(mList.get(position.getIncorrectAnswers().get(2));
问题。添加(qCorrect);
问题。添加(错误);
添加问题(Q1);
添加问题(Q2);
收集。洗牌(问题);
用户输入=新字符串[mList.size()];
最终阵列适配器阵列适配器=
新的ArrayAdapter(上下文、android.R.layout、简单微调器、下拉菜单、问题);
支架.微调器.设置适配器(arrayAdapter);
holder.spinner.setOnItemSelectedListener(新的AdapterView.OnItemSelectedListener(){
@凌驾
已选择公共视图(AdapterView父视图、视图视图、整型位置、长id){
if(holder.spinner.getSelectedItem()等于(qCorrect)){
用户输入[位置]=qCorrect;
}
}
@凌驾
未选择公共无效(AdapterView父级){
}
});
}
按钮finshButton=findViewById(R.id.finishBtn);
finshButton.setOnClickListener(新视图.OnClickListener(){
@凌驾
公共void onClick(视图v){
int couter=0;

String[]user_input=itemAdapter.getUser_input();
对于(int i=0;ion)哪一行不显示值,ButtonListener(其他Actvity)中的“String[]user\u input=itemAdapter.getUser\u input();”没有显示我通过“itemAdapter.getUser\u input()”将完整的适配器代码发布到此处。我检查了它。这与ArrayList无关,但getUser\u input()有一些问题。请尝试调试它。