如何在Android Studio上将字符串从SecondActivity传递到MainActivity?

时间:2018-01-25 22:21:34

标签: java android string android-studio apk

我在SecondActivity.java中有一个公共String stringPass,我想传递给MainActivity.java,这样当我点击一个按钮时,SecondActivity.java中的字符串会更新一个在MainActivity.java中声明的TextView电视。 / p>

我得到的错误是当我按下按钮时,未显示SecondActivity.java中的字符串。 相反,它来自“Hello World!”没有显示文字。

仅供参考,我将从多个活动中为MainActivity.java添加字符串,因此我希望这种方式适用于我的组织。

谢谢!

SecondActivity.java

    public class SecondActivity  extends AppCompatActivity{

    public String stringPass;

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

        stringPass = "this is from SecondActivity";

       }
    }

MainActivity.java

    public class MainActivity extends AppCompatActivity {


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


        final TextView tv = findViewById(R.id.tv);
        Button btn = findViewById(R.id.btn);

        btn.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {

                tv.setText(new SecondActivity().stringPass);                
            }           
        });
      }
    }

activity_main.xml中

    <Button
        android:id="@+id/btn"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />

    <TextView
        android:id="@+id/tv"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Hello World!"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintRight_toRightOf="parent"
        app:layout_constraintTop_toTopOf="parent" />

</android.support.constraint.ConstraintLayout>

1 个答案:

答案 0 :(得分:0)

第二项活动中有很多内容吗?这是一项实际活动吗?如果没有用对话框替换它,单击确定按钮时可以更新文本框。