java - 如何在导航 View 中的 2 个 header xml 文件之间切换?

标签 java android

我有两个 xml 头文件,我想在用户登录前显示其中一个,在登录后显示另一个。

我正在通过共享首选项检查登录状态,但我不知道如何更改 header xml 文件。

最佳答案

一种方法是删除当前标题 View (removeHeaderView) 并填充新的标题 View 并将其设置为 NavigationView (inflateHeaderView),如下所示:

NavigationView navigationView = (NavigationView) findViewById(R.id.nav_view);
// If the view has not been set in the xml then here should be a null check because there is going to be no header view 
// and there will be no need to remove that
View hView =  navigationView.getHeaderView(0);
navigationView.removeHeaderView(hView);
navigationView.inflateHeaderView(R.layout.nav_my_other_header);

关于java - 如何在导航 View 中的 2 个 header xml 文件之间切换?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48027489/

相关文章:

android - 将 TTS 输出设置为 16 或 8kHz

java - 定制DAO : persist and record exists?

Java - 读取/扫描文本文件的字符串长度并在程序中使用它

android - 编译项目时出现 Dagger 错误

android - AChartEngine 最大 x 标签可见

android - 如何获取光标的实际位置?

Java 图像导入

java - 在 android 中使用文本框和按钮

java - C语言 : Difference between float and void in functions

android - 替代Android中的 "FLAG_BLUR_BEHIND"?