【问题标题】:Adding EditText with button with input later used to do addition添加带有按钮的EditText,稍后用于添加
【发布时间】:2016-10-28 00:53:00
【问题描述】:

我很困惑,在添加更多 EditText 字段后,我怎么知道字符串代码,所以我可以做一个加法数学来将它们全部加起来。谢谢。

更新: 所以我设法使用 ArrayAdapter 将数据添加到一个数组中,但我遇到了将其回调的问题。帮助!!!

    txt = (EditText) findViewById(R.id.iteminput);
    show = (ListView) findViewById(R.id.listView);
    save = (Button) findViewById(R.id.Add);
    save.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            String getInput = txt.getText().toString();

            addArray.add(getInput);
            ArrayAdapter<String> adapter = new ArrayAdapter<String>(Splitter.this, android.R.layout.simple_list_item_1, addArray);
            show.setAdapter(adapter);
            ((EditText) findViewById(R.id.iteminput)).setText("");


        }
    });


   public void Calculate(View v){


    for(int i = 0; i<adapter.getCount() ; i++){
      Integer  Total= adapter.getItem(i);
    }
    TextView Total=(TextView)findViewById(R.id.Total);
    Total.setText("Splitted Cost: "+Total.toString());

  }

getCount 无法获取适配器 :(

【问题讨论】:

  • 清楚地描述你想要达到的目标
  • 我想制作一个应用程序,用户可以在其中输入数字到数组中,然后会有一个计算按钮,onClick 将在该按钮上广告数组中的所有数字。

标签: android arrays android-arrayadapter


【解决方案1】:

只需将您的适配器声明为一个字段,您就可以在方法中访问它。

public class MainActivity extends Activity {

    private ArrayAdapter<String> adapter; // declared as a field now you can access it anywhere.

    public void onCreate(){
         txt = (EditText) findViewById(R.id.iteminput);
    show = (ListView) findViewById(R.id.listView);
    save = (Button) findViewById(R.id.Add);
    save.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            String getInput = txt.getText().toString();

            addArray.add(getInput);
            adapter = new ArrayAdapter<String>(Splitter.this, android.R.layout.simple_list_item_1, addArray);
            show.setAdapter(adapter);
            ((EditText) findViewById(R.id.iteminput)).setText("");


        }
    });
    }
}

【讨论】:

  • 谢谢,它解决了调用部分,但对于添加部分,此代码无法正常工作。
    public void Calculate(View v){ for(int i = 0; i
猜你喜欢
  • 1970-01-01
  • 2015-05-11
  • 2017-02-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-07-02
  • 2012-07-14
  • 1970-01-01
相关资源
最近更新 更多