在活动之间传递textview值

时间:2020-03-24 19:36:03

标签: java android

我有问题。 我有2个在单击按钮时增加的textview,但是我不知道如何将textview的值传递给同样具有2个textview的下一个活动。就像在第一个活动上将值增加1,然后在同一textview上的第二个活动上,将值1依此类推... 我正在尝试将textview值传递给下一个活动,我尝试了一些使用putextra方法的方法,但是没有用。 有代码

  Button btnIncrement;
private CheckBox i1, i2, i3;
public Button bckbutton;

TextView rspCorecte;
TextView rspGresite;

int counterCorecte=0;
int counterGresite=0;




private void initialStates(Intent intent) {
    i1=findViewById(R.id.q1_1);
    i2=findViewById(R.id.q1_2);
    i3=findViewById(R.id.q1_3);
}

然后...

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

    final AlertDialog.Builder alert2=new AlertDialog.Builder(Intrebarea1.this);
    LayoutInflater factry=LayoutInflater.from(Intrebarea1.this);
    final View view2=factry.inflate(R.layout.raspuns_corect, null);
    alert2.setView(view2);
    alert2.setPositiveButton("", new DialogInterface.OnClickListener() {
        @Override
        public void onClick(DialogInterface dialogInterface, int i) {
             finish();
        }
    });


    final AlertDialog.Builder alertadd = new AlertDialog.Builder(Intrebarea1.this);
    LayoutInflater factory = LayoutInflater.from(Intrebarea1.this);
    final View view = factory.inflate(R.layout.raspuns1, null);
    alertadd.setView(view);
    alertadd.setPositiveButton("", new DialogInterface.OnClickListener() {
        public void onClick(DialogInterface dlg, int sumthin) {
            startActivity(new  Intent(Intrebarea1.this,Intrebarea2.class));
            finish();
        }
    });

    // SEMNUL INTREBARII
    //reference of button added in the main layout
    final Button raspuns = findViewById(R.id.arataraspuns);
    //setting click event listener to button
    raspuns.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            AlertDialog.Builder builder = new AlertDialog.Builder(Intrebarea1.this);
            View view = LayoutInflater.from(Intrebarea1.this).inflate(R.layout.raspuns1, null);

            builder.setView(view);
            builder.show();

        }
    });


    bckbutton=(Button) findViewById(R.id.backbutton);
    bckbutton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
    onBackPressed();
}

});

    btnIncrement=findViewById(R.id.btnIncrement);

    rspCorecte=findViewById(R.id.rspCorecte);
    rspGresite=findViewById(R.id.rspGresite);

    btnIncrement.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {


         if(i1.isChecked() && !i2.isChecked() && !i3.isChecked()){
             alert2.show();
             counterCorecte++;
         }

         else if (i1.isChecked() && i2.isChecked() && i3.isChecked()){
                alertadd.show();
             counterGresite++;
            }

         else if(i2.isChecked() && i3.isChecked()){
             alertadd.show();counterGresite++;
         }

         else if(i1.isChecked() && i2.isChecked()){
             alertadd.show();counterGresite++;
         }

         else if(i1.isChecked() && i3.isChecked()){
             alertadd.show();counterGresite++;
         }

         else if(i2.isChecked()){
             alertadd.show();counterGresite++;
         }

         else if(i3.isChecked()){
             alertadd.show();counterGresite++;
         }
            btnIncrement.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    raspuns.setVisibility(View.VISIBLE);
                    btnIncrement.setVisibility(View.GONE);
                }
            });

            rspCorecte.setText(String.valueOf(counterCorecte));
            rspGresite.setText(String.valueOf(counterGresite));


        }
    }); }


    public void bckButton(){
    Intent intent=new Intent(this, AlegeMediulDeInvatare.class);
    startActivity(intent);
    finish();
    }

public void openMainMenu(){
    Intent intent=new Intent(this, MainMenu.class);
    startActivity(intent);
    finish();
}

public void onBackPressed(){
    AlertDialog.Builder inchiziteoria = new AlertDialog.Builder(Intrebarea1.this, R.style.AlertDialogStyle);
    LayoutInflater inchizi=LayoutInflater.from(Intrebarea1.this);
    View view=inchizi.inflate(R.layout.inchizi_teoria, null);
    inchiziteoria.setView(view);
    // Set the positive button
    inchiziteoria.setPositiveButton("DA", new DialogInterface.OnClickListener() {
        @Override
        public void onClick(DialogInterface dialog, int which) {
            openMainMenu();
        }
    });

    // Set the negative button
    inchiziteoria.setNegativeButton("NU", null);
    // Create the alert dialog
    AlertDialog dialog = inchiziteoria.create();
    // Finally, display the alert dialog
    dialog.show();
    ((Button)dialog.getButton(dialog.BUTTON_POSITIVE)).setTypeface(null, Typeface.BOLD);
    ((Button)dialog.getButton(dialog.BUTTON_NEGATIVE)).setTypeface(null, Typeface.BOLD);
    // Change the alert dialog background color
    dialog.getWindow().setBackgroundDrawable(new ColorDrawable(Color.WHITE));
}
   public void openUrmatoarea(View v){
    Intent intent=new Intent(this, Intrebarea2.class);
    startActivity(intent);
    finish();
   }

}

有人可以告诉我如何将textview值传递给下一个活动吗? 预先感谢。

1 个答案:

答案 0 :(得分:0)

   Intent intent = new Intent(getBaseContext(), MainActivity.class);
   // change the MainActivity if you want to pass the value to another activity
   intent.putExtra("text", text);
   startActivity(intent);

在下一个要获取值的活动中:

   Intent intent = getIntent();


   String text = intent().getStringExtra("text");
相关问题