如何从一个onclicklistner到另一个onclicklistner获取字符串值?

时间:2017-05-22 08:29:52

标签: android

  

我有一个动态添加编辑文本的按钮B1。我还有一个提交按钮,它获取编辑文本的值并将数据发送到服务器。现在,我如何获得字符串值,以便在单击提交按钮时,可以将所有编辑文本的数据发送到服务器....   提前致谢

 Diagnolist.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            EditText ed;

            Integer count = 1;
            List<EditText> allEds = new ArrayList<EditText>();

            for (int i = 0; i < count; i++) {

                ed = new EditText(MainActivity.this);
                allEds.add(ed);
                ed.setHint("add diagonis");
                ed.setLayoutParams(new ViewGroup.LayoutParams(ViewGroup.LayoutParams.FILL_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT));
                addDiagnosis.addView(ed);


            }

            strings = new String[(allEds.size())];

            for ( int i = 0; i < allEds.size(); i++) {
                strings[i] = allEds.get(i).getText().toString();

            }

3 个答案:

答案 0 :(得分:0)

你已经拥有了值strings = new String[(allEds.size())];

使用strings值发送到服务器

答案 1 :(得分:0)

将其设为公共变量。在public String varName = "";函数之外声明onCreate(),但仍然在类中。

答案 2 :(得分:0)

Diagnolist.setOnClickListener(new View.OnClickListener() 
    {
        @Override
        public void onClick(View v) 
        {

            EditText ed = new EditText(MainActivity.this);
            ed.setHint("add diagonis");
            ed.setLayoutParams(new ViewGroup.LayoutParams(ViewGroup.LayoutParams.FILL_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT));
            addDiagnosis.addView(ed); 
        } 
    });       
    JSONObject stringdata=new JSONObject();
    submitbutton.setOnClickListener(new View.OnClickListener() 
    {
        @Override
        public void onClick(View v) 
        {

           if(addDiagnosis.getChildCount()>0)
           {
                for(int i=0;i<addDiagnosis.getChildCount();i++)
                {
                    EditText edittext=addDiagnosis.getchildAt(i);
                    stringdata.put("EditTextValueNo :"+i,"Value:"+edittext.getText().toString());

                    //write your server request sending code here and send the stringdata jsonobject to server.
                }
           }
        } 
    }); 

这里的Diagnolist是你的按钮,它将在你的addDiagnosis linearlayout中添加edittext,而stringdata是tha jsonobject,它将保存你可以直接发送到服务器的每个编辑文本的数据,submitbutton用于将所有edittext值发送到服务器。