当数组结束时它将如何进行下一个活动?

问题描述 投票:0回答:1

我正在创建一个多测验的应用程序

在我的新活动中,将是只对图片和选择没有疑问的图像测验

但是,我将如何完成我的主要活动以转到新活动

我的应用包含7个问题和7个3选择

下一个活动有3个图像和3个3选择

如果第7个问题已回答,它将进入下一个活动

我是Java的初学者

这是android studio

我正在单人学习,所以请帮助我

先谢谢您:)

activity_main.xml

        <RelativeLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:padding="8dp"
            android:layout_marginBottom="40dp">
            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="Score"
                android:textSize="20sp"
                android:layout_alignParentLeft="true"
                android:id="@+id/score_text"/>


            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:textSize="20sp"
                android:layout_alignParentRight="true"
                android:text="0"
                android:id="@+id/score"/>




        </RelativeLayout>

        <TextView
            android:id="@+id/question"
            android:layout_width="match_parent"
            android:layout_height="116dp"
            android:layout_marginBottom="40dp"
            android:fontFamily="@font/carter_one"
            android:padding="8dp"
            android:text="Which thing is alive?"
            android:textSize="20sp"
            android:textStyle="bold|italic" />

        <Button
            android:id="@+id/choice1"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginBottom="24dp"
            android:background="#0091EA"
            android:fontFamily="@font/carter_one"
            android:padding="8dp"
            android:text="bird"
            android:textColor="#fff" />

        <Button
            android:id="@+id/choice2"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginBottom="24dp"
            android:background="#0091EA"
            android:fontFamily="@font/carter_one"
            android:padding="8dp"
            android:text="door"
            android:textColor="#fff" />

        <Button
            android:id="@+id/choice3"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginBottom="24dp"
            android:background="#0091EA"
            android:fontFamily="@font/carter_one"
            android:padding="8dp"
            android:text="rock "
            android:textColor="#fff" />

        <Button
            android:id="@+id/quit"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginBottom="24dp"
            android:background="#871C1C"
            android:fontFamily="@font/carter_one"
            android:padding="8dp"
            android:text="Quit"
            android:textColor="#fff" />


    </LinearLayout>

MainActivity.java

package com.example.ltoexam;

    import androidx.appcompat.app.AppCompatActivity;

    import android.os.Bundle;
    import android.view.View;
    import android.widget.Button;
    import android.widget.TextView;
    import android.widget.Toast;

    public class MainActivity extends AppCompatActivity {

        private com.example.ltoexam.QuestionLibrary nQuestionLibrary = new com.example.ltoexam.QuestionLibrary();

        private TextView nScoreView;
        private TextView nQuestionView;
        private Button nButtonChoice1;
        private Button nButtonChoice2;
        private Button nButtonChoice3;
        private Button quit;

        private String nAnswer;
        private int nScore = 0;
        private int nQuestionNumber = 0;




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

            nScoreView = (TextView) findViewById(R.id.score);
            nQuestionView = (TextView) findViewById(R.id.question);
            nButtonChoice1 = (Button) findViewById(R.id.choice1);
            nButtonChoice2 = (Button) findViewById(R.id.choice2);
            nButtonChoice3 = (Button) findViewById(R.id.choice3);
            quit = (Button) findViewById(R.id.quit) ;

            updateQuestion();

            //Start of Button Listener for Button1
            nButtonChoice1.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View view) {
                    //My logic for Button goes in here
                    if (nButtonChoice1.getText() == nAnswer){
                        nScore =nScore + 1;
                        updateScore(nScore);
                        updateQuestion();
                        //This line of code is optional
                        Toast.makeText(MainActivity.this, "correct", Toast.LENGTH_SHORT).show();
                    }else {
                        Toast.makeText(MainActivity.this, "wrong the answer is " + nAnswer, Toast.LENGTH_SHORT).show();
                        updateQuestion();
                    }
                }
            });

            //End of Button Listener for Button2


            //Start of Button Listener for Button2
            nButtonChoice2.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View view) {
                    //My logic for Button goes in here
                    if (nButtonChoice2.getText() == nAnswer){
                        nScore =nScore + 1;
                        updateScore(nScore);
                        updateQuestion();
                        //This line of code is optional
                        Toast.makeText(MainActivity.this, "correct", Toast.LENGTH_SHORT).show();
                    }else {
                        Toast.makeText(MainActivity.this, "wrong the answer is " + nAnswer, Toast.LENGTH_SHORT).show();
                        updateQuestion();
                    }
                }
            });

                quit.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View view) {
                    // TODO Auto-generated method stub
                    finish();
                    System.exit(0);

                }
            });



            //End of Button Listener for Button2


            //Start of Button Listener for Button3
            nButtonChoice3.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View view) {
                    //My logic for Button goes in here
                    if (nButtonChoice3.getText() == nAnswer){
                        nScore =nScore + 1;
                        updateScore(nScore);
                        updateQuestion();
                        //This line of code is optional
                        Toast.makeText(MainActivity.this, "correct", Toast.LENGTH_SHORT).show();
                    }else {
                        Toast.makeText(MainActivity.this, "wrong the answer is " + nAnswer, Toast.LENGTH_SHORT).show();
                        updateQuestion();
                    }
                }
            });

            //End of Button Listener for Button2




        }
        private void updateQuestion(){
            nQuestionView.setText(nQuestionLibrary.getQuestion(nQuestionNumber));
            nButtonChoice1.setText(nQuestionLibrary.getChoice1(nQuestionNumber));
            nButtonChoice2.setText(nQuestionLibrary.getChoice2(nQuestionNumber));
            nButtonChoice3.setText(nQuestionLibrary.getChoice3(nQuestionNumber));

            nAnswer = nQuestionLibrary.getCorrectAnswer(nQuestionNumber);
            nQuestionNumber++;
        }


        private void updateScore(int point){
            nScoreView.setText("" + nScore);

        }

    }







   QuestionLibrary.java








    package com.example.ltoexam;



 public class QuestionLibrary {

        private String nQuestions [] = {
                "1.The three colors of the traffic lights are:",
                "2.Yellow triangular signs provide what kind of information",
                "3.Which of the following traffic signs are blue?",
                "4.Steady green light means",
                "5.A flashing yellow light at a road crossing signifies",
                "6.A solid white line on the right edge of the highway slopes in towards your left. This shows that",
                "7.You are in a No-Passing zone when the center of the road is marked by"

        };

        private String nChoices [] [] = {
                {"red, green and yellow", "red, green and blue", "yellow, green and blue"},
                {"warning", "hospital across", "speed limit"},
                {"regulatory signs", "information signs", "danger warning signs"},
                {"you must yield to all pedestrians and other motorists using the intersection", "go, it is safe to do so", "proceed cautiously through the intersection before the light changes to red."},
                {"Caution - slow down and proceed with caution", "Stop and stay until light stops flashing", "Wait for the green light"},
                {"there is an intersection joint ahead", "the road will get narrower", "you are approaching a construction area"},
                {"a broken yellow line","a broken white line","two solid yellow lines"}




        };

        private String nCorrectAnsers[] = {"red, green and yellow", "warning", "information signs", "go, it is safe to do so", "Caution - slow down and proceed with caution", "the road will get narrower", "two solid yellow lines"};

        public String getQuestion(int a) {
            String question = nQuestions[a];
            return question;
        }

        public String getChoice1(int a) {
            String choice0 = nChoices[a] [0];
            return choice0;
        }

        public String getChoice2(int a) {
            String choice1 = nChoices[a] [1];
            return choice1;
        }

        public String getChoice3(int a) {
            String choice2 = nChoices[a] [2];
            return choice2;
        }

        public String getCorrectAnswer(int a) {
            String answer = nCorrectAnsers[a];
            return answer;
        }


    }

提前谢谢:)

java android arrays image android-studio
1个回答
0
投票

只需检查是否所有问题都已显示,并在这种情况下以updateQuestion方法开始活动。

© www.soinside.com 2019 - 2024. All rights reserved.