为什么Android BottomNavigationView不显示?
我正在使用新的安卓为什么Android BottomNavigationView不显示?,android,bottomnavigationview,Android,Bottomnavigationview,我正在使用新的安卓BottomNavigationView,但是底部导航MenuItem动作视图没有显示 调试之后,我发现菜单项不是空的,并且可见性是可见的 检查根视图的高度和宽度后,即使在对根元素的layoutlayout\u width=50dp和layout\u height=50dp中的值进行硬编码后,它也将变为0 这是我的底部导航菜单: <menu xmlns:android="http://schemas.android.com/apk/res/android" xmlns:a
BottomNavigationView
,但是底部导航MenuItem
动作视图没有显示
调试之后,我发现菜单项不是空的,并且可见性是可见的
检查根视图的高度和宽度后,即使在对根元素的layoutlayout\u width=50dp
和layout\u height=50dp
中的值进行硬编码后,它也将变为0
这是我的底部导航菜单:
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<item
android:id="@+id/nearby_fragment"
android:enabled="true"
android:icon="@drawable/homenearbyfragment"
android:title="@string/bottom_nearby"
app:showAsAction="always"/>
<item
android:id="@+id/route_fragment"
android:title="@string/bottom_homescreen"
android:enabled="true"
app:showAsAction="always"
android:icon="@drawable/home_mycommute" />
<item
android:id="@+id/newsfeed_activity"
android:title="@string/bottom_news"
android:enabled="true"
app:showAsAction="always"
android:icon="@drawable/newsfeed"
app:actionLayout="@layout/bagde_layout"/>
</menu>
如果您使用的是片段,则需要将选项菜单设置为true
设置选项菜单(true)代码>您是否忘记将其添加到您的main活动中
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
你能发布活动xml布局代码吗?@user007你能发布当前状态的屏幕截图吗?@jaffar你能向我们展示你的布局吗?我在自定义actionLayout上遇到了同样的问题,你找到了发生这种情况的原因吗?
private void setCountOnNews(Menu menu) {
mReportMenu = menu.findItem(R.id.newsfeed_activity);
FrameLayout count = (FrameLayout) mReportMenu.getActionView();
count.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(MainActivity.this, NewsFeedActivity.class);
startActivity(intent);
MainApplication.getInstance().trackScreenView(getString(R.string.tracknewsfeedmenu));
}
});
TextView notifCount = (TextView) count.findViewById(R.id.menu_badge);
//if (Utils.getNewsfeedCountPreference(MainActivity.this) > 0)
notifCount.setText(String.valueOf(Utils.getNewsfeedCountPreference(MainActivity.this)));
notifCount.setText("asd;jfnapsdifnaspdifnasdpifnaspdfnapsdifnaspidfnapsidfnaspdiufif");
Log.d(TAG, "setCountOnNews:" + notifCount.getText().toString());
//else
// notifCount.setVisibility(View.GONE);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.main, menu);
return true;
}