2017-06-12 42 views
-2

My Main.xml布局有2个按钮。在一个活动中显示多个字符串的多个按钮

我知道如何使用按钮从一个活动到另一个,但我不知道如何有多个按钮去一个活动,并显示多个字符串。

main.xml中

Button1的Button2的

Main2.xml

如果由Button1的,显示STRING1推出。

如果通过按钮2,显示字符串2

我如何作出这样的推出?

主要活动包含以下代码:

Button bas1b = (Button) findViewById(R.id.bas1b); 
 
    Button bas2b = (Button) findViewById(R.id.bas2b); 
 

 
     bas1b.setOnClickListener(new View.OnClickListener(){ 
 

 
      @Override 
 
      public void onClick(View v) { 
 

 
       String string1 = getResources().getString(R.string.welcome); 
 

 
       Intent intent1 = new Intent(Main.this, Main2.class); 
 
       intent1.putExtra("s1",string1); 
 
       startActivity(intent1); 
 
      } 
 
     }); 
 

 
     bas2b.setOnClickListener(new View.OnClickListener(){ 
 

 
      @Override 
 
      public void onClick(View v) { 
 

 
       String string2 = getResources().getString(R.string.Hello); 
 

 
       Intent intent2 = new Intent(Main.this, Main2.class); 
 
       intent2.putExtra("s2",string2); 
 
       startActivity(intent2); 
 
      } 
 
     });

MAIN2活动包含以下代码:

 String s1; 
 
     String s2; 
 

 
     TextView bas1 = (TextView)findViewById(R.id.bas); 
 

 
     Intent intent1=new Intent(getIntent()); 
 
     s1=intent1.getStringExtra("s1"); 
 
     bas1.setText(s1); 
 

 
     Intent intent2=new Intent(getIntent()); 
 
     s2=intent2.getStringExtra("s2"); 
 
     bas1.setText(s2);

如果我只是写代码MAIN2活动:

 Intent intent1=new Intent(getIntent()); 
 
     s1=intent1.getStringExtra("s1"); 
 
     bas1.setText(s1);

第一个按钮(bas1b)会工作,并显示字符串1。

,但如果我写这样的代码:

Intent intent1=new Intent(getIntent()); 
 
     s1=intent1.getStringExtra("s1"); 
 
     bas1.setText(s1); 
 

 
     Intent intent2=new Intent(getIntent()); 
 
     s2=intent2.getStringExtra("s2"); 
 
     bas1.setText(s2);

只是第二个按钮(bas2b)会工作,并显示字符串2。

我的要求是:

如果我点击bas1b,在Main2.xml展现给我字符串1。

如果我点击bas2b,在Main2.xml中向我显示string2。

+1

请继续前进,发布您的代码(Java + XML) –

+0

你可以只通过在String意图 – Adithya

回答

0

在你的按钮的每一个onCLickListeners,你会打电话给你的活动B,将文本传递到下一个活动,你会做到这一点:

Intent intent = new Intent(getContext(), YOUR_ACTIVITY_B.class); 
intent.putString("YOUR_TAG", "The text you want to pass to activity B"); 
startActivity(intent); 

然后,在你Activiy B,收到文字,像这样:

Intent i = getIntent(); 
Bundle extras = i.getExtras(); 

text = extras.getString("YOUR_TAG"); 
0

主要活动应该是

Button bas1b = (Button) findViewById(R.id.bas1b); 
    Button bas2b = (Button) findViewById(R.id.bas2b); 

     bas1b.setOnClickListener(new View.OnClickListener(){ 

      @Override 
      public void onClick(View v) { 

       String string1 = getResources().getString(R.string.welcome); 

       Intent intent1 = new Intent(Main.this, Main2.class); 
       intent1.putExtra("s1",string1); 
       startActivity(intent1); 
      } 
     }); 

     bas2b.setOnClickListener(new View.OnClickListener(){ 

      @Override 
      public void onClick(View v) { 

       String string2 = getResources().getString(R.string.Hello); 

       Intent intent2 = new Intent(Main.this, Main2.class); 
       intent2.putExtra("s1",string2); 
       startActivity(intent2); 
      } 
     }); 

第二活动应该b Ë

Intent intent1=new Intent(getIntent()); 
s1=intent1.getStringExtra("s1"); 
bas1.setText(s1); 

不论2个活动的额外您发送应具有相同的密钥(S1)

相关问题