5
ViewPager
var ve bir işlem gerçekleşirse ilk Fragment
'u değiştirmem gerekiyor. I LatestVideosFragment
bir kanalı tıkladığındaGeçerli Fragmanı, Android'de ViewPager uygulamasında değiştirin
public static class PagerAdapter extends FragmentStatePagerAdapter{
private TempChannel latestChannel;
private VideosFragment.SortType sortType;
public PagerAdapter(FragmentManager fm) {
super(fm);
}
@Override
public Fragment getItem(int position) {
switch (position){
case 0:
if(latestChannel == null) {
return new LatestVideosFragment();
}else{
return VideosFragment.getVideosFragment(latestChannel, sortType);
}
case 1:
return new LiveVideosFragment();
case 2:
return new ConversationsFragment();
}
return null;
}
}
Temel olarak, adaptör birinci pozisyon VideosFragment
sınıfın bir örneği olarak değişmelidir.
public void startLatestChannelFragment(TempChannel channel, VideosFragment.SortType sortType){
adapter.setLatestChannel(channel, sortType);
adapter.notifyDataSetChanged();
Log.d("x", "on channel started");
}
adaptör üzerinde
notifyDataSetChanged()
çağıran parçasını güncellerdi farz, ama öyle değil. Ayrıca,
ViewPager
numaralı telefondan
invalidate(
numaralı telefonu arayarak herhangi bir etki yaratmaya çalıştık.
Fragment
, yalnızca üçüncü sekmeye gidip sonra da ilkine dönersem güncellenir.
Teşekkürler! Bir yöntemin geçersiz kılınması çok kolay olacağını düşünmüyordu – kimv