私は2つの活動をしています。 Activity1.javaとActivity2.java Activity1のビューに5つのボタンがあります。各ボタンはActivity2.javaを開く必要がありますが、異なるボタンに対して異なるビューを表示する必要があります。Android:別のアクティビティからのインテントで渡された値に基づいて、アクティビティのビューを表示するにはどうすればよいですか?
Activity1.java - activity1_view.xml
Activity2.java - ボタン1 activity2_view1.xml
Activity2.java - ボタン2 activity2_view2.xml
Activity2.java - Buttonのactivity2_view3.xml 3
Activity2.java - ボタン4
Activity2.javaためactivity2_view4.xml - ボタン5
ためactivity2_view5.xml私は私のコードを掲載しています。それは動作していません
誰かが私が間違っていると言うことができますか?
Activity1.java
private View.OnClickListener sButton1Listener = new View.OnClickListener(){
public void onClick(View v){
Intent i = new Intent(Activity1.this, Activity2.class);
i.putExtra("Button", "1");
startActivity(i);
}
};
Activity2。 javaの解決
@Override
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
Bundle extras = getIntent().getExtras();
if(extras !=null){
String value = extras.getString("Button");
if(value == "1"){
setContentView(R.layout.activity2_view1);
}
else if(value == "2"){
setContentView(R.layout.activity2_view2);
}
else if(value == "3"){
setContentView(R.layout.activity2_view3);
}
else if(value == "4"){
setContentView(R.layout.activity2_view5);
}
else if(value == "5"){
setContentView(R.layout.activity2_view5);
}
}
}
: ジョニによって語ら通り(値== "1")なら、私を修正する(value.equals( "1")と、コードが動作している場合は、私だけでちょうど比べStringオブジェクト。整数のように。それは私の問題だった。
私たちがあなたに役立つように見えるようにいくつかのコードを追加するとよいでしょう。 – kailoon
その問題を理解するのは難しいです。ここにコードを投稿できますか?ありがとう。 –
この希望を試してみてください。最初は違う別のビューXMLを忘れて、1つのXMLだけを使用してください。そのためには、すべてのビューを1つのlinearlayoutに入れて、ビュー1,2を使用してください...それぞれのレイアウトのsetVisibility ... –