java为什么我的BottomNavigationView没有出现?
我试图在项目中添加BottomNavigationView,但在运行项目时没有显示
我想把这个放在几个活动上,以及工具栏,所以我创建了一个类来初始化它们并扩展AppCompatActivity,这样我使用工具栏或BottomNavigationView的活动只需扩展这个活动并调用初始化它的方法(我不知道这是否是正确的方法,如果没有请告诉我)。我的工具栏可以正常工作,但我的底部导航视图没有显示
这就是我所说的导航活动:
public abstract class NavigationActivity extends AppCompatActivity {
private Toolbar mToolbar;
private BottomNavigationView mNavigationView;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
}
public void initNavigation(int navigationId) {
mNavigationView = (BottomNavigationView) findViewById(navigationId);
mNavigationView.setOnNavigationItemSelectedListener(new BottomNavigationView.OnNavigationItemSelectedListener() {
@Override
public boolean onNavigationItemSelected(@NonNull MenuItem menuItem) {
switch (menuItem.getItemId()) {
case R.id.navigation_entrainements:
startActivity(new Intent(getBaseContext(),MenuEntrainementsActivity.class));
break;
case R.id.navigation_nutrition:
startActivity(new Intent(getBaseContext(),NutritionActivity.class));
break;
case R.id.navigation_statistiques:
startActivity(new Intent(getBaseContext(),StatistiquesActivity.class));
break;
}
return true;
}
});
}
public void initToolbar(int toolbarId) {
mToolbar = (Toolbar) findViewById(toolbarId);
mToolbar.setNavigationIcon(R.drawable.baseline_arrow_back_black_18dp);
setSupportActionBar(mToolbar);
getSupportActionBar().setDisplayShowTitleEnabled(false);
mToolbar.setNavigationOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View view) {
finish();
}
});
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.menu,menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.btnHome :
startActivity(new Intent(this,MainActivity.class));
return true;
case R.id.btnProfil :
startActivity(new Intent(this,ProfilActivity.class));
return true;
default :
return super.onOptionsItemSelected(item);
}
}
}
我如何在其他活动中使用它的一个例子:
initNavigation(R.id.navigation);
initToolbar(R.id.toolbar);
以下是我在XML文件中实现BottomNavigationView的方式:
<安卓.support.design.widget.BottomNavigationView
安卓:id="@+id/navigation"
安卓:layout_width="match_parent"
安卓:layout_height="match_parent"
安卓:layout_marginStart="0dp"
安卓:layout_marginEnd="0dp"
安卓:background="?安卓:attr/windowBackground"
app:menu="@menu/navigation" />
如果你还需要什么,尽管问, 谢谢你的帮助:) (抱歉,如果我犯了错误,我的英语不太好)
# 1 楼答案
我在onCreate方法之外使用这个