【发布时间】:2018-04-02 17:53:31
【问题描述】:
您好,我在我的应用程序中使用底部导航,底部有三个选项卡,并且有三个不同的片段。每当用户从底部更改选项卡时,它应该显示相关的 RecyclerView 数据,但问题是在所有三个选项卡中它显示一个 RecyclerView。它在所有三个选项卡中显示了 ItemOneFragment 的 RecyclerView。
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
BottomNavigationView bottomNavigationView = (BottomNavigationView)
findViewById(R.id.navigation);
bottomNavigationView.setOnNavigationItemSelectedListener
(new BottomNavigationView.OnNavigationItemSelectedListener() {
@Override
public boolean onNavigationItemSelected(@NonNull MenuItem item) {
// Fragment selectedFragment = null;
switch (item.getItemId()) {
case R.id.navigation_home:
Fragment selectedFragment = ItemOneFragment.newInstance();
FragmentTransaction transaction = getSupportFragmentManager().beginTransaction();
transaction.replace(R.id.frame_layout, selectedFragment);
transaction.commit();
break;
case R.id.navigation_dashboard:
Fragment Englishsfrag = ItemTwoFragment.newInstance();
FragmentTransaction transactiontwo = getSupportFragmentManager().beginTransaction();
transactiontwo.replace(R.id.frame_layout, Englishsfrag);
transactiontwo.commit();
break;
case R.id.navigation_notifications:
Fragment mixfrag = ItemThreeFragment.newInstance();
FragmentTransaction transactionthree = getSupportFragmentManager().beginTransaction();
transactionthree.replace(R.id.frame_layout, mixfrag);
transactionthree.commit();
break;
}
return true;
}
});
//Manually displaying the first fragment - one time only
FragmentTransaction transaction = getSupportFragmentManager().beginTransaction();
transaction.replace(R.id.frame_layout, ItemOneFragment.newInstance());
transaction.commit();
//Used to select an item programmatically
//bottomNavigationView.getMenu().getItem(2).setChecked(true);
}
}
【问题讨论】:
-
显示你的代码在哪里实现了
Recyclerview -
它的代码真的很大,无法完成文件,它是三个不同的片段,我使用的是工作室提供的默认导航结构..
-
这是您的代码是正确的,但我必须查看您的 recyclerview 代码任何代码链接
标签: android android-fragments bottomnavigationview