2017-06-12 26 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)

相關問題