android通过两个活动发送文本

时间:2014-07-18 15:18:16

标签: java android string class android-intent

我已经有一个程序可以将文本从一个类传送到另一个类但我想制作一个程序,可以将文本从一个类传送到另一个类。

            String l1 = ing1.getText().toString();
            String a = ing2.getText().toString();
            String b = ing3.getText().toString();
            String c = ing4.getText().toString();
            String d = ing5.getText().toString();
            String e = ing6.getText().toString();

            Intent intent = new Intent(getApplicationContext(), classA.class);

            intent.putExtra("A", l1);
            intent.putExtra("B", a);
            intent.putExtra("C", b);
            intent.putExtra("D", c);
            intent.putExtra("E", d);
            intent.putExtra("F", e);

            startActivity(intent);

            //PART2 (INTENTS)

            String title1 = title.getText().toString();
            String s1 = step1.getText().toString();
            String s2 = step1.getText().toString();
            String s3 = step1.getText().toString();
            String s4 = step1.getText().toString();
            String s5 = step1.getText().toString();
            String s6 = step1.getText().toString();
            String s7 = step1.getText().toString();
            String s8 = step1.getText().toString();

            // create a new intent
            Intent i = new Intent(getApplicationContext(), classB.class);
            // put the name and phone(to be sent to other activity) in intent
            i.putExtra("TITLE", title);
            i.putExtra("STEP1", s1);
            i.putExtra("STEP2", s2);
            i.putExtra("STEP3", s3);
            i.putExtra("STEP4", s4);
            i.putExtra("STEP5", s5);
            i.putExtra("STEP6", s6);
            i.putExtra("STEP7", s7);

我希望能够将第一个意图带到a类,当按下类a中的按钮时,我希望它转到b类并带有意图。可以这样做吗?

2 个答案:

答案 0 :(得分:0)

  

我希望能够将第一个意图带到课堂a和a   类a中的按钮是按下去到类b并携带意图。

我不知道这意味着什么但是如果你想在按下按钮时将意图发送到Activity B,你首先必须为你的按钮实现一个监听器。

mBtn.setOnClickListener(new View.onClickListener(){
  public void onClick(View v){
     Intent activityB = new Intent(ActivityA.this,ActivityB.class);
     activityB.putExtra("key",value);
     startActivity(activityB);
  }
});  

现在在Activity B,您可以执行以下操作:

@Override
public void onResume(){
  super.onResume();
  Intent intentFromA = getIntent();
  Bundle dataFromA = intentFromA.getExtras();
}

答案 1 :(得分:0)

这绝对可以做到。

在你收到第一个意图的类(A类)中,抓住发给这个clas的意图:

Bundle extras = getIntent().getExtras();
 if (extras != null) {
  String data= extras.getString("EXTRA");
   if (datas!= null) {
    intentToClassB.putExtra("EXTRA", data);
   }  
 }

其中,intentToClassB应该是全局定义的意图,将您带到B类。

基本上,你抓住从最后一个活动发送的意图并立即将它连接到将转向B类的意图。注意:此代码应该放在onCreate()方法中