Viewpager'ı kullanırken sayfa güncelleştirme sorunumla ilgili yardıma ihtiyacım var. FragmentStatePagerAdapter ile basit bir viewpager kullanıyorum. Tek yapmak istediğim, parçam/görünümümdeki bazı metin görüntülerini güncelleyebilmem için mevcut fragmana/görünüme erişmek. Forumda aradım ve birkaç şeyi öğrenmek için geldim - Bunu işlemenin yollarından biri, adaptörün geri çağrısına instantiateItem() çağrısı yaparak ve findViewbyTag ile görünümü geri almaktır. Bunu nasıl uygulayacağımı anlayamadım ve ayrıca bunun FragmentStatePagerAdapter için çalışıp çalışmadığından emin değilim. - Çeşitli forumlarda önerildiği gibi diğer seçenekleri araştırdım, ancak bunları çalıştırılamıyor.FragmentSpacePagerAdapter ile görünümlerdeki parçaları/görünümleri güncelleme
Benim kodum, bir android http://developer.android.com/training/animation/screen-slide.html ile aynıdır. Temel bileşenler aynıdır (bir metin görünümünde bazı görüntüleme bileşenlerine sahip Fragman etkinliği xml, içinde yalnızca bir görüntü çağrı cihazına sahip viewpager xml, bir Fragment sınıfı ve ana FragmentActivity sınıfı). benim FragmentActivity sınıfında, viewPager'ım için bir pageChangelistener ekledim, böylece onviewSelected() sırasında textview değişikliklerini yapabilirim.
Herhangi bir yardım için teşekkür ederiz.
Başvuru için kod ekleniyor.
Public class myActivity extends FragmentActivity
//Variable declarations
protected void onCreate(Bundle savedInstanceState) {
ViewPager mPager = (ViewPager) findViewById(R.id.pager);
mPagerAdapter = new ScreenSlidePagerAdapter(getSupportFragmentManager());
mPager.setAdapter(mPagerAdapter);
View CurrView;
OnPageChangeListener pageChangelistener = new OnPageChangeListener() {
@Override
public void onPageSelected(int pageSelected) {
doTextViewChnges();//access the text view and update it based on pageSelected
---THIS IS WHERE I AM STUCK IN TRYING TO GET THE TEXTVIEW IN MY CURRENT FRAGMWNT/VIEW-------
}
mPager.setOnPageChangeListener(pageChangelistener);
}
private class ScreenSlidePagerAdapter extends FragmentStatePagerAdapter {
public ScreenSlidePagerAdapter(android.support.v4.app.FragmentManager fm) {
super(fm);
}
@Override
public android.support.v4.app.Fragment getItem(int position) {
return ScreenSlidePageFragment.create(position, <other parameters I want to pass>);
}
@Override
public int getCount() {
return NUM_PAGES;
}
}
Sanırım ilk satırında Fragment nesnesini nasıl çıktın anlayamadık. Aşağıda, bu parçayı eklediğim Fragman etkinlik sınıfının içerdiği kod – user1938357
kodunu oluşturuyor. – user1938357
@ user1938357 Kaç tane parçanız var? FragmentTwo'yu parça adınız ne olursa olsun değiştirebilirsiniz. Parçanızın referansı olduğunda, görünümünü güncelleyebilirsiniz. –