2012-04-20 8 views
1

私は3つのレイアウトを持っています。 main.xml、secondscreen.xml、私は(開いている画面) currentscreenのように戻るボタンを上書きしたいthidrscreen.xmlif(現在の画面== R.layout.main)

if(currentscreen == R.layout.main) 
{ 
    do something 
} 
    else (currentscreen == R.layout.secondscreen) 
    { 
    do something 
    } 

私はそれをどのように行うことができますか?

助けていただけたら幸いです。

+1

なぜレイアウトごとに3つの異なるアクティビティがありますか? 、あなたはやろうとしているのですか? – DGomez

+0

+1してください。 1つのアクティビティーですべてを実行しようとすると、変数を管理し、すべてのコードを管理するのが苦痛になります – dymmeh

+0

私はアクティビティー間のインテントを使用することを恐れています。私のメソッド(レイアウトのためのもの)間で共有しているものがたくさんあるので。 – Merve

答えて

3

あなたは正確に、これをしたいと思いますなぜ私にはわからないが、あなたがあなたのレイアウト内のトップレベルのビューにIDを持っている場合、あなたはおそらく行うことができます:

if (getContentView().getId() == R.id.myTopLevelViewFromMain){ 
     // do stuff 
} else if (getContentView().getId() == R.id.myTopLevelViewFromSecondScreen){ 
     // do other stuff 
} 

など

あなたの質問へのコメントで示唆されているように(これはおそらくより良い設計選択です)、複数のアクティビティを使用できます。

さらに3つ目の方法は、レイアウト内に3つの最上位ビューを使用し、必要に応じて表示を操作することです。

関連する問題