Java 基于Android Studio中的按钮发送数据

Java 基于Android Studio中的按钮发送数据,java,android,android-intent,android-activity,Java,Android,Android Intent,Android Activity,我有两项活动。第一个活动有3个按钮。这些按钮的文本为C1、C2和C3。例如,如果我单击按钮2,第二个活动应该在文本视图中显示“C2”。或者,如果在第一个活动中单击了按钮1,则应在第二个活动中显示“C1”。按钮3也一样。我曾试图将数据从一个活动移动到另一个活动,但问题是,当我按下按钮1或按钮2时,第二个活动中会显示noting,但当我按下按钮3时,会显示“C3”。那么,我应该如何显示按钮1和按钮2呢?为了快速修复,您可以先在活动中创建一个静态变量,然后在单击按钮时设置该变量。在下一个活动中,您可以

我有两项活动。第一个活动有3个按钮。这些按钮的文本为C1、C2和C3。例如,如果我单击按钮2,第二个活动应该在文本视图中显示“C2”。或者,如果在第一个活动中单击了按钮1,则应在第二个活动中显示“C1”。按钮3也一样。我曾试图将数据从一个活动移动到另一个活动,但问题是,当我按下按钮1或按钮2时,第二个活动中会显示noting,但当我按下按钮3时,会显示“C3”。那么,我应该如何显示按钮1和按钮2呢?

为了快速修复,您可以先在
活动中创建一个
静态变量
,然后在单击按钮时设置该变量。在下一个活动中,您可以像这样访问varibale

  first_activity.variable
然后将其设置为
TextView

当然,这不是最好的答案,但我希望你能发布你已经尝试过的东西,也许我可以帮助你修正你的方法。

代码如下

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context=".MainActivity">

<Button
    android:text="c1"
    android:id="@+id/button1"
    android:textSize="22sp"
    android:layout_width="match_parent"
    android:layout_height="wrap_content" />
<Button
    android:text="c2"
    android:id="@+id/button2"
    android:textSize="22sp"
    android:layout_width="match_parent"
    android:layout_height="wrap_content" />
<Button
    android:text="c3"
    android:id="@+id/button3"
    android:textSize="22sp"
    android:layout_width="match_parent"
    android:layout_height="wrap_content" />
第二个活动呢

 TextView textView ;
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main2);
    textView = findViewById(R.id.textView);

    String str = getIntent().getStringExtra("text");

    textView.setText(str);
}

请将相关代码添加到您的question@PPartisan可以
Button btn1 , btn2 , btn3;
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    btn1 = findViewById(R.id.button1);
    btn2 = findViewById(R.id.button2);
    btn3 = findViewById(R.id.button3);


    btn1.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            Intent intent = new Intent(MainActivity.this,Main2Activity.class);
            String str = btn1.getText().toString();
            intent.putExtra("text",str);
            startActivity(intent);
        }
    });

    btn2.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            Intent intent = new Intent(MainActivity.this,Main2Activity.class);
            String str = btn2.getText().toString();
            intent.putExtra("text",str);
            startActivity(intent);
        }
    });
    btn3.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            Intent intent = new Intent(MainActivity.this,Main2Activity.class);
            String str = btn3.getText().toString();
            intent.putExtra("text",str);
            startActivity(intent);

        }
    });
}
 TextView textView ;
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main2);
    textView = findViewById(R.id.textView);

    String str = getIntent().getStringExtra("text");

    textView.setText(str);
}