안녕하세요, 저는 Android 앱을 처음 사용하고 있으며 tabLayout이 포함 된 뷰 호출기를 사용하여 애플리케이션을 만들고 싶습니다. 또한 목록이 포함 된 조각이 있는데이 조각을 만들고 싶습니다. 선택한 페이지에 따라 다른 페이지의 데이터를 사용합니다. 거의 달성했지만 viewPager 페이지를 만들 때 문제가 발생했습니다. 내 ViewPagerAdapter가 FragmentStatePagerAdapter를 extemds하고 다음과 같습니다 : 나는이 일을하고 내 MainActivity에서ViewPager 슬라이드가 첫 번째와 마지막 조각을 건너 뜁니다.
public class ViewPagerAdapter extends FragmentStatePagerAdapter{
static final int NUM_ITEMS = 7;
public ViewPagerAdapter(FragmentManager fm) {
super(fm);
}
@Override
public Fragment getItem(int position) {
Log.e("new instance",position+"");
Fragment fragment=null;
switch (position)
{
case 0: fragment=new ChannelListFragment();
Log.e("new instance ",position+"");
break;
case 1: fragment= new ChannelListFragment();
Log.e("new instance ",position+"");
break;
case 2: fragment=new ChannelListFragment();
Log.e("new instance ",position+"");
break;
case 3: fragment=new ChannelListFragment();
Log.e("new instance ",position+"");
break;
case 4: fragment=new ChannelListFragment();
Log.e("new instance ",position+"");
break;
case 5: fragment=new ChannelListFragment();
Log.e("new instance ",position+"");
break;
case 6: fragment=new ChannelListFragment();
Log.e("new instance ",position+"");
break;
}
return fragment;
}
@Override
public int getCount() {
return NUM_ITEMS;
}
}
:
문제가 페이지를 보내 주시면에viewPager = (ViewPager) findViewById(R.id.pager);
final ViewPagerAdapter adapter = new ViewPagerAdapter(getSupportFragmentManager());
viewPager.setAdapter(adapter);
viewPager.addOnPageChangeListener(new TabLayout.TabLayoutOnPageChangeListener(tabLayout));
tabLayout.setOnTabSelectedListener(new TabLayout.OnTabSelectedListener() {
@Override
public void onTabSelected(TabLayout.Tab tab) {
viewPager.setCurrentItem(tab.getPosition());
}
@Override
public void onTabUnselected(TabLayout.Tab tab) {
}
@Override
public void onTabReselected(TabLayout.Tab tab) {
}
});
}
는 : 활동이 처음 생성 할 때, 로그에 나는 것을보고 두 번째 탭의 위치 2, 세 번째 탭의 위치 3, 여섯 번째 탭의 위치 4, 다섯 번째 위치를 만들고 첫 번째 페이지의 위치 0과 위치 1을 만들고 마지막 탭은 6 번째 탭의 위치를 만듭니다. 스크롤 뒤로 4,3,2,1,0 및 첫 번째 조각에 대한 아무것도 만드는 것입니다. 선택한 탭에 따라 데이터를 설정할 때 앱의 기능에 영향을줍니다. 호출기가 항목 0과 항목 6, 마지막 항목을 포함하는 페이지에서 하나의 조각을 만들 수 있도록 문제를 해결할 수 있습니까? 즉, 사용자가 스크롤 현재 페이지를 왼쪽 또는 오른쪽으로 좋은 사용자 경험을 할 수 있도록 기본적으로
[ViewPager 프래그먼트의 데이터 새로 고침] (http://stackoverflow.com/questions/36503779/refresh-data-in-viewpager-fragment) 기본적으로 ViewPager는 현재 프래그먼트와 프래그먼트를 양쪽에 유지합니다. 빠른 스 와이프를 부드럽게 유지하기 위해 살아 있습니다. 로드 할 때 각 조각에서 무언가를해야하는 경우 링크 된 대답에 설명 된 방법을 사용하십시오. –