gpt4 book ai didi

java - 在 Android Studio 中的 OnClick 类之间共享数组

转载 作者:行者123 更新时间:2023-11-30 02:02:02 25 4
gpt4 key购买 nike

我正在编写一个代码,它接受用户的输入,然后用户点击“输入另一个 Activity ”按钮或“完成”按钮。我目前正在获取 enterAnotherButton onClickListener 中的信息,但我需要能够将信息传输到 doneButton onClickListener 以通过 Intent 发送到另一个 Activity。这是我当前的代码:

public class EnterCourseActivity extends ActionBarActivity {
private MainActivity ma;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_enter_course);

buttonClick();
}

public void buttonClick () {

Button enterAnotherButton = (Button) findViewById(R.id.enterAnotherButton);
enterAnotherButton.setOnClickListener(new View.OnClickListener() {
int i = 1;
public void onClick(View view) {
EditText courseName;
courseName = (EditText) findViewById(R.id.inputCourseName);
String courseNameString = courseName.getText().toString();
String[] courses = new String[i];
courses[i - 1] = courseNameString;
i++;
courseName.setText("");
}
});

Button doneButton = (Button) findViewById(R.id.doneButton);
doneButton.setOnClickListener(new View.OnClickListener(){
public void onClick(View view){

}
});

//when user clicks doneButton execute this
ArrayList<String> coursesArrayList = new ArrayList<String>(Arrays.asList(courses));
Intent i = new Intent(EnterCourseActivity.this, MainActivity.class);
i.putStringArrayListExtra("course", coursesArrayList);

startActivity(i);
}

最佳答案

正如@feantury 所建议的,只需创建一个类来存放您要保存的信息。然后您可以在单击 doneButton 时访问相同的对象。

public void buttonClick () {
final SampleObj obj = new SampleObj("test");
Button enterAnotherButton = (Button) findViewById(R.id.enterAnotherButton);
enterAnotherButton.setOnClickListener(new View.OnClickListener() {
int i = 1;
public void onClick(View view) {
obj.courseName = "test1";
}
});

Button doneButton = (Button) findViewById(R.id.doneButton);
doneButton.setOnClickListener(new View.OnClickListener(){
public void onClick(View view){
Log.d(TAG, "Result of obj: " + obj.courseName);
}
});
}

class SampleObj {
String courseName;

public SampleObj(String courseName) {
this.courseName = courseName;
}
}

点击 enterAnotherButton 将 obj.courseName 更改为“test1”,然后可以在 doneButton 的 onClick 中访问它。

关于java - 在 Android Studio 中的 OnClick 类之间共享数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31304990/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com