【问题标题】:how to pass data from checkbox to another activity如何将数据从复选框传递到另一个活动
【发布时间】:2017-12-02 12:18:56
【问题描述】:
private void buildEmailText() {
    if (box1.isChecked()) emailText += "\nCoca-Cola";
    if (box2.isChecked()) emailText += "\nFanta";
    if (box3.isChecked()) emailText += "\nInca Cola";

来自一项活动

  if (box4.isChecked()) emailText += "\nEl Boricua Original";
  if (box5.isChecked()) emailText += "\nEl Boricua de Pollo";

这个来自另一个活动

 if (box6.isChecked()) emailText += "\nBebida 1/2 litro";
 if (box7.isChecked()) emailText += "\nBebida 1 1/2 litro";

我需要从不同活动中选择的一个选项包含在一封邮件中

作为我需要在邮件中的样本

El boricua original
Bebida 1/2 litro
fanta

【问题讨论】:

    标签: java android


    【解决方案1】:

    试试这个

    Intent intent = new Intent(v.getContext(), whichDrink.class.class);
    intent.putExtra("DATA1","Bebida 1/2 litro");
    intent.putExtra("DATA2","Bebida 1 1/2 litro");
    startActivity(intent);
    

    像这样在whichDrink.class接收数据

    String DATA1 = getIntent().getStringExtra("DATA1");
    String DATA2 = getIntent().getStringExtra("DATA2");
    

    【讨论】:

    • 如何帮助将来自其他活动的数据放入电子邮件中?
    • 你可以使用sharedprefrence。
    • @alisa 使用 SharedPreferences
    • private void buildEmailText() { if (box1.isChecked()) emailText += "\nCoca-Cola"; if (box2.isChecked()) emailText += "\nFanta"; if (box3.isChecked()) emailText += "\nInca Cola"; } private void buildEmailText1(){ if (box4.isChecked()) emailText += "\nEl Boricua Original"; if (box5.isChecked()) emailText += "\nEl Boricua de Pollo"; } private void buildEmailText2(){ if (box6.isChecked()) emailText += "\nBebida 1/2 litro"; if (box7.isChecked()) emailText += "\nBebida 1 1/2 litro"; }
    • 但按下发送按钮时应用程序崩溃
    【解决方案2】:

    如果您需要开始活动以获得结果,请执行以下操作:

    Intent intent = new Intent(v.getContext(), whichDrink.class);
    intent.putExtra("Bebida 1/2 litro","Bebida 1/2 litro");
    intent.putExtra("Bebida 1 1/2 litro","Bebida 1 1/2 litro");
    startActivityForResult (intent, 0);
    

    然后在 whichDrink 活动类中:

    String firstValue = getIntent().getStringExtra("Bebida 1/2 litro");
    String secondValue = getIntent().getStringExtra("Bebida 1 1/2 litro");
    

    至少你应该将这些关键字符串提取为常量

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-12-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-12-18
      • 2011-10-27
      相关资源
      最近更新 更多