我有一个edittext,我想通过点击按钮将该edittext中的项目添加到数组中,但后来我发现当我键入不同的文本时它会一直覆盖前一个文本,所以我只得到一个文本数组。
请在每次单击按钮时如何获取文本并将其添加到数组中?
我的代码:
public class ReadMain extends AppCompatActivity {
private RelativeLayout mainLayoutRead;
EditText readEditText;
private Button btnSaveTime;
static ArrayList<String> saveGottenSubjects;
TinyDB tinyDB;
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.read_main);
mainLayoutRead = (RelativeLayout)findViewById(R.id.mainLayoutRead);
readEditText = (EditText)findViewById(R.id.readEditText);
btnSaveTime = (Button)findViewById(R.id.btnSaveTime);
tinyDB = new TinyDB(ReadMain.this);
saveGottenSubjects = new ArrayList<>();
btnSaveTime.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String gottenSubjectread = readEditText.getText().toString();
saveGottenSubjects.add(gottenSubjectread);
System.out.println(saveGottenSubjects);
finish();
}
});
}
}
答案 0 :(得分:2)
在btnSaveTime按钮的onClick方法中。最后你调用finish()。 哪个关闭活动。所以一直创建新的ArrayList。并存储在0索引。
如果您希望一次存储的值多于删除finish()。 你可以把其他按钮完成。 获取数组列表后,在完成()之前,您可以将其存储在数据库中。