2017-07-09 7 views
0

私はアンドロイドプラットフォームのJavaスタディを開始しています。 (悪い英語で申し訳ありません、私は翻訳者を使用しています)。私は、ツールバーの項目を選択するときにフラグメントを表示する方法を知りたいと思います。Android Studio BottomNavigationViewショーフラグメント

断片Javaファイル:

  • VisaoGeralFragment
  • AgendaFragment
  • MuralFragment

フラグメントレイアウトファイル:

  • fragment_visao_geral.xml
  • fragment_agenda.xml
  • fragment_mural.xml

MainActivity:事前に

public class MainActivity extends AppCompatActivity { 

    private BottomNavigationView.OnNavigationItemSelectedListener mOnNavigationItemSelectedListener = new BottomNavigationView.OnNavigationItemSelectedListener() { 

     @Override 
     public boolean onNavigationItemSelected(@NonNull MenuItem item) { 
      Fragment fragment = null; 
      switch (item.getItemId()) { 
       case R.id.navigation_vgeral: 
       // Show VisaoGeralFragment 
       return true; 
       case R.id.navigation_agenda: 
       // Show AgendaFragment 
       return true; 
       case R.id.navigation_mural: 
       // Show MuralFragment 
       return true; 
      } 

      return false; 
     } 
    }; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 
    } 
} 

感謝。

答えて

0

まず、activity_mainで、ナビゲータで移動するときにフラグメントが表示されるレイアウト(フレームレイアウトが望ましい)を作成する必要があります。また、 そのレイアウトのIDを設定する必要があります。以下
は、あなたが使用するコードです:

Fragment frag = new YourFragment(); 

FragmentManager fm = getFragmentManager(); 
FragmentTransaction trans = fm.beginTransaction(); 
trans.replace(R.id.id_of_your_frame, frag); 
trans.commit(); 

あなたは、関連するフラグメントのクラスでYourFragment()一部を変更することで、すべてのケースのために、このコードを配置する必要があります。
あなたとid_of_your_frameを忘れずに変更してください。

+0

回答ありがとうございます。http://prntscr.com/ftkffe – Sth4rley

+0

import.support.v4.app.Fragmentをインポートしてandroid.support.Fragmentをインポートする必要があります。 –

+0

置き換えられましたが、別のエラーが発生しました。http://prntscr.com/ftkj6x – Sth4rley

関連する問題