關於NavigationView在使用中遇到的一個小問題
阿新 • • 發佈:2019-01-21
當未登入情況下是這樣的:
登入成功後是這樣的:
退出app之後重新開啟是這樣的:
真是日了狗了。我啥都沒動怎麼重新進入還不一樣呢?
附一段關於NavigationView的程式碼
View headerView = mNavigationView.getHeaderView(0); Menu menu = mNavigationView.getMenu(); mLoginMenuItem = menu.getItem(0); mUserIconIV = (ImageView) headerView.findViewById(R.id.iv_userIcon);
設定頭像和文字的程式碼:
if (App.isLogIn()) {
mLoginMenuItem.setTitle("退出登入");
Glide.with(this).load(IMG_URl).into(mUserIconIV);
mUsernameTV.setText(AVUser.getCurrentUser().getUsername());
}
木有任何問題。
debug吧!在進入app後發現頭像(即mUserIconIV )的寬高是48(ps:手機為紅米3s,dpi為xh,預設頭像使用的是@android:drawable/sym_def_app_icon
當退出app後重新進入app,使用的是登入成功之後的頭像(即http://aigestudio.com/wp-content/uploads/2016/08/logo.png),寬高為496*496(並不是圖片的高度,是Imageview的高度),NavigationView的高度是有限的,ImageView的高度很大,所以不會顯示底下的TextView了。
so,解決辦法是寫死ImageView的寬高。