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