从单个edittext

时间:2017-05-18 07:33:54

标签: java android arrays

我有一个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();
            }
        });
    }

}

1 个答案:

答案 0 :(得分:2)

在btnSaveTime按钮的onClick方法中。最后你调用finish()。 哪个关闭活动。所以一直创建新的ArrayList。并存储在0索引。

如果您希望一次存储的值多于删除finish()。 你可以把其他按钮完成。 获取数组列表后,在完成()之前,您可以将其存储在数据库中。