본문 바로가기

나의 플랫폼/안드로이드

[Android] Tablayout이 보이지 않을 때

336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

TabLayout을 사용하면 Tab과 ViewPager를 손쉽게 연결 시켜서 사용할 수 있습니다.

정말 편하고 안정적으로 이용할 수 있는데요.


사용하다가보면 갑자기 TabLayout이 안보이는 현상이 일어납니다.

레이아웃은 차지하고 있는데... indicator와 text만 보이지 않을때가 있습니다.


왜왜??? 열심히 구글링을 해보니 역시나 바로 결론이 안나오더군요.


원인은 TabLayout이 아직 로딩되지 않은 상태에서 TabLayout을 셋팅하는 함수를 호출해서 

화면에 출력이 되지 않은듯 합니다.


해결책!

tabLayout.post(new Runnable() {

                @Override

                public void run() {

                    tabLayout.setupWithViewPager(mViewPager);

                    tabLayout.setTabsFromPagerAdapter(mPagerAdapter);

                }

            });


위와 같이 tabLayout에 post runnable로 onCreateView 이후 셋팅이 되도록 설정 합니다.

그럼 짜잔~ 하고 나타날껍니다.


https://code.google.com/p/android/issues/detail?id=180462


그래도 혹시나 안나타나시는 분들은 확실한건 아니지만, xml 레이아웃에 CoordinatorLayout 으로 감싼후 다시 해보세요.


## 이블로그는 어디까지는 찾았던 부분을 잊지 않기 위해 올려놓은 것 입니다.

    내용이 부실해도 이해해 주시길 바랍니다.