2017-02-01 18 views
0

"Setting"、 "Newsfeed"、 "Profile"を表示する下部ナビゲーションバーがあります。しかし、私がInvisibleに設定しても、それは再び表示されません。だから私は可視性の状態をチェックするためにifステートメントを作成しましたが、それは機能しません。RecyclerView invisibleを設定する

bottomNavigationView = (BottomNavigationView) findViewById(R.id.bottom_menu); 
    bottomNavigationView.setOnNavigationItemSelectedListener(new BottomNavigationView.OnNavigationItemSelectedListener() { 
     @Override 
     public boolean onNavigationItemSelected(@NonNull MenuItem item) { 

      switch (item.getItemId()){ 

       case R.id.news_icon: 

        if (mNewsFeedList.getVisibility() == View.INVISIBLE){ 
         mNewsFeedList.setVisibility(View.VISIBLE); 
        }else{ 

        } 

        Toast.makeText(newsfeed.this, "news", Toast.LENGTH_LONG).show(); 
       case R.id.profile_icon: 
        mNewsFeedList.setVisibility(View.INVISIBLE); 

        Toast.makeText(newsfeed.this, "profile", Toast.LENGTH_LONG).show(); 

       case R.id.setting_icon: 
        mNewsFeedList.setVisibility(View.INVISIBLE); 


      } 

      return false; 
     } 
    });` 

もう1つの質問は、ナビゲーションの表示を設定する良い方法ですか?それを行うためのより良い方法はありますか?

答えて

3

break;ステートメントがないため、スイッチのステートメントが異なる場合があります。私はあなたが探していると思うことはある:私の質問に答えるための

switch(id) { 
    case id_1: 
    //do some work 
    break; 
    case id_2: 
    //do some work 
    break; 
    default: 
    //do other work 
} 

Java switch statement

+0

感謝。私は「休憩」から逃してしまうのでとても馬鹿だ。とにかく、オブジェクトを非表示にしてナビゲーションを設定することをお勧めしますか? – kings077712

+1

あなたが達成しようとしているUIがわかりませんが、このコードがうまくいく場合は、変更する必要はありません。その大丈夫は、必要なときに表示を非表示にします。 –

関連する問題