Android

(스크랩) Navigation View Header View 관리하기

Machine_웅 2018. 7. 10. 17:17
728x90
반응형

앞에서 Navigation View 를 이용해서 프로젝트를 만들어 보았습니다.

NavigationView 에서는 두개의 Layout을 얹어서 사용하는데,

menu 사용은 이미 앞에서 다루었고,


이번에 알아보는 것은 nav_header_view 의 값을 바꾸는 내용을 알아봅니다.


1.  getHeaderView 함수를 이용하는 방법이 있습니다.


NavigationView navigationView = (NavigationView) findViewById(R.id.nav_view);
navigationView.setNavigationItemSelectedListener(this);

//View nav_header_view = navigationView.inflateHeaderView(R.layout.nav_header_main);
View nav_header_view = navigationView.getHeaderView(0);

TextView nav_header_id_text = (TextView) nav_header_view.findViewById(R.id.nav_header_id_text);
nav_header_id_text.setText(app.user_id+" "+app.user_pw);

위와 같이 접근하여, TextView 에 접근하면, 값을 바꿀 수 있습니다.


이렇게 말이죠.


2. 두번째방법은 inflateHeaderView 를 이용해서 레이아웃을 inflate 하는 방법이 있습니다.

NavigationView navigationView = (NavigationView) findViewById(R.id.nav_view);
navigationView.setNavigationItemSelectedListener(this);

View nav_header_view = navigationView.inflateHeaderView(R.layout.nav_header_main);
//View nav_header_view = navigationView.getHeaderView(0);

TextView nav_header_id_text = (TextView) nav_header_view.findViewById(R.id.nav_header_id_text);
nav_header_id_text.setText(app.user_id+" "+app.user_pw);

이것의 결과는 이렇게 나옵니다.



차이를 아시겠나요?

그렇습니다. 2번 방법으로 만들때는, 원래 navigation view 에서 header_view 를 빼주어야 합니다. 안그러면 이렇게 두개가 들어가게 되는군요!


도움이 되었길 바랍니다

Happy Coding :)



출처: http://ljs93kr.tistory.com/16 [건프의 소소한 개발이야기]

출처: http://ljs93kr.tistory.com/16 [건프의 소소한 개발이야기]

728x90
반응형

'Android' 카테고리의 다른 글

안드로이드 search View  (0) 2018.07.11
( 스크랩 ) 안드로이드 상태바 색상 변경  (0) 2018.07.10
안드로이드 Please select Android SDK. 이슈  (0) 2018.07.09
navigationview 클릭이벤트  (0) 2018.07.08
Navigation View  (0) 2018.07.07