android - 从edittext获取字符串并将其存储在数组中

时间:2017-03-25 16:29:20

标签: android arraylist

我有一个

EditText- addArea = (EditText) findViewById(R.id.editTextArea);

和ArrayList - public static ArrayList<String> areaList = new ArrayList<String>();

和一个按钮 - addbtn = (Button) findViewById(R.id.addBTN);

这是我将字符串存储到数组中的代码。它显示了toastMessage但我不知道它是否存储了字符串。

 addbtn.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                String area = addArea.getText().toString();
                if (!area.isEmpty()){
                    areaList.add(area);
                    toastmessage(area+" added successfully.");
                    addArea.setText("");
                }
            }
        });

需要的是,微调器在下一个布局中。当我点击微调器时,它应该显示我在edittext中输入的项目。

2 个答案:

答案 0 :(得分:0)

要检查是否添加了列表,可以通过这种方式检查

 for (int i=0; i<areaList.size();i++){
        addArea.append(areaList.get(i));
        addArea.append("\n");
    }

您可以通过检查string setText值来了解areaList是否存储在textView中。

要将areaList传递给下一个活动,请添加此

Intent intent = new Intent(MainActivity.this, secondActivity.class);
intent.putExtra("areaList",areaList);

在第二个Activity中,使用此行获取所有areaList数据

ArrayList<String> areaList = (ArrayList<String>)getIntent().getSerializableExtra("areaList");

然后将areaList设置为spinner

ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_dropdown_item, areaList);
spinner.setAdapter(adapter);

答案 1 :(得分:0)

为了确保添加该项目,您可以打印array或查看其size。 首先将全局变量声明为int lastSize;

lastSize = 0; //we start from 0
addbtn.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                String area = addArea.getText().toString();
                if (!area.isEmpty()){
                    areaList.add(area);
                    //size has changed, means new item added successfully
                    if (areaList.size() > lastSize) {
                       toastmessage(area+" added successfully.");
                       addArea.setText("");
                    }
                    //lets update lastSize to record latest size
                    lastSize = areaList.size();
                }
            }
        });