2016-04-07 3 views

答えて

-1

あなたは非表示にし、例えば1か一方を表示することができます

LinearLayout mLinearLayout1 = (LinearLayout) findViewById(R.id.linearlayout_1); 
LinearLayout mLinearLayout2 = (LinearLayout) findViewById(R.id.linearlayout_1); 

mLinearLayout1.setVisibility(View.GONE); 
mLinearLayout2.setVisibility(View.VISIBLE); 

をしかし、あなたが非表示にdiifferent行動といくつかのビューを表示したい場合は、私はあなたがフラグメントを使用することをお勧めします。

+0

レイアウトに他の要素があるとどうなりますか?私はそれが特定のボタンのためだけに起こりたい – behking

0

あなたは次のように行うことができます:私はそう答えとして私の入力を書いて、あまり評判を持っコメントすることができませんので

LinearLayout mLinearLayout1 = (LinearLayout)findViewById(R.id.linearlayout_1); 
LinearLayout mLinearLayout2 = (LinearLayout)findViewById(R.id.linearlayout_1); 
Button button1 = (Button) findViewById(R.id.button1); 

button1.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
     mLinearLayout1.setVisibility(View.GONE); 
     mLinearLayout2.setVisibility(View.VISIBLE); 

     } 
    }); 
0

ちょうどこの理由のためにdownvoteをしないでください。

説明に記載されている内容が何で、なぜ必要なのかはあまり明確ではありません。

多くの異なるビュー(LinearLayoutsではなく)の1つをメインアクティビティ(条件または状態エンジンまたは時間ベースの間隔に依存する可能性があります)に表示する場合は、おそらくViewFlipperを使用できます。あなたのすべてに

0

おかげで特別にマイクM 私は私の答えを得る: `removeViewを()`チェックアウトし、 `ViewGroup`の` addView() `メソッド

public class MainActivity extends AppCompatActivity { 
private Button button; 
@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
    button = (Button) findViewById(R.id.button); 

    final LinearLayout mLinearLayout1 = (LinearLayout)findViewById(R.id.liner1); 
    final LinearLayout mLinearLayout2 = (LinearLayout)findViewById(R.id.liner2); 
    button.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      mLinearLayout1.removeView(button); 
      mLinearLayout2.addView(button); 


       } 
    }); 
} 

}