본문 바로가기

FragmentPagerAdapter

[Android] TabLayout with ViewPager 에서 tab을 클릭 했을 때 TabLayout을 사용할 때, OnClickListener는 먹히지 않습니다. TabLayout의 자식뷰에 OnClickListener가 설정이 되지 않는 것이 원인 입니다.(만약, addTab을 이용하여 추가할 경우 해당 View에 setTag,getTag로 구분으로 줘서 이용해도 될것이다.) 대부분 ViewPager와 TabLayout을 아래와 같이 설정 할 것이다. FragmentPagerAdapter pagerAdapter = new FragmentPagerAdapter(getActivity().getSupportFragmentManager()); TabLayout tabs = (TabLayout) mRootView.findViewById(R.id.tabLayout); ViewPager view.. 더보기
[Android] 한 FrameActivity 안에 여러개의 ViewPager를 사용할 때 주의점. FrameActivity 에서 ViewPager를 하나만 사용할 경우, 아래와 같은 예제를 많이 이용하실 껍니다.package com.truiton.fragmentpageradapter; import android.os.Bundle;import android.support.v4.app.Fragment;import android.support.v4.app.FragmentActivity;import android.support.v4.app.FragmentManager;import android.support.v4.app.FragmentPagerAdapter;import android.support.v4.view.ViewPager;import android.view.Menu;import android.view.. 더보기
[Android] FragmentPagerAdapter 갱신!!! FragmentPagerAdapter를 사용할 경우 ViewPager와 연동을 합니다.이때 특정 Page에 Fragment를 갱신하고 싶어 모두 알고 계시는 notifyDataSetChanged 함수를 호출 합니다. 하지만! 위 함수를 호출 하더라도 갱신이 되지 않죠!!이럴 경우 아래와 같은 방법을 해보세요. 1. FragmentPagerAdapter 대신 FragmentStatePagerAdapter를 사용한다.2. getItemPosition 함수를 오바라이딩 한다.3. getItemPosition 함수를 이용하여 특정 Fragment만 갱신 한다. @Override public int getItemPosition(Object object) { if (여기는 특정 Fragement를 파악할 수 있는 .. 더보기