আজ আমি সেট করার চেষ্টা করছি ViewPager.setOnPageChangeListener
এবং আমি খুঁজে পেয়েছি যে এটি হ্রাস পেয়েছে।
আজ আমি সেট করার চেষ্টা করছি ViewPager.setOnPageChangeListener
এবং আমি খুঁজে পেয়েছি যে এটি হ্রাস পেয়েছে।
উত্তর:
ViewPager.setOnPageChangeListener
এখন অবচয় করা হয়েছে। ViewPager.addOnPageChangeListener
পরিবর্তে ব্যবহার করা প্রয়োজন।
উদাহরণ স্বরূপ,
ViewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {
@Override
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
}
@Override
public void onPageSelected(int position) {
}
@Override
public void onPageScrollStateChanged(int state) {
}
});
এটি আমার পক্ষে কাজ করেছে:
viewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener(){
@Override
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
conterchange.setText(""+(1+position));
}
@Override
public void onPageSelected(int position) {
}
@Override
public void onPageScrollStateChanged(int state) {
}
});
কোটলিনে কারও যদি সমাধানের প্রয়োজন হয় :
viewPager.addOnPageChangeListener (object: ViewPager.OnPageChangeListener {
override fun onPageScrollStateChanged(state: Int) {
TODO("not implemented") //To change body of created functions use File | Settings | File Templates.
}
override fun onPageScrolled(position: Int, positionOffset: Float, positionOffsetPixels: Int) {
TODO("not implemented") //To change body of created functions use File | Settings | File Templates.
}
override fun onPageSelected(position: Int) {
TODO("not implemented") //To change body of created functions use File | Settings | File Templates.
}
})
SimpleOnPageChangeListener
নীচে কোডের মাধ্যমে আপনি অর্জন করতে পারেন :
private Fragment page = null;
/** Defining a listener for pageChange */
ViewPager.SimpleOnPageChangeListener pageChangeListener = new ViewPager.SimpleOnPageChangeListener(){
@Override
public void onPageSelected(int position) {
super.onPageSelected(position);
page = getSupportFragmentManager().findFragmentByTag("android:switcher:" + R.id.pager_selectPhotos + ":" + position);
System.out.println(page);
switch (position) {
case 0:
break;
case 1:
break;
default:
break;
}
}
};
/** Setting the pageChange listener to the viewPager */
_pager.setOnPageChangeListener(pageChangeListener);
প্রয়োজনে একটি ইন্টারফেস তৈরি করুন;
public interface FragmentLifecycle {
public void onPauseFragment();
public void onResumeFragment();
}
ভিউপ্যাজারের প্রতিটি খণ্ডে যেমন দেখানো হয়েছে তে ইন্টারফেস প্রয়োগ করুন
public class FragmentCast extends Fragment implements FragmentLifecycle { @Override public void onPauseFragment() { Log.i(TAG, "onPauseFragment()"); Toast.makeText(getActivity(), "onPauseFragment():" + TAG, Toast.LENGTH_SHORT).show(); } @Override public void onResumeFragment() { Log.i(TAG, "onResumeFragment()"); Toast.makeText(getActivity(), "onResumeFragment():" + TAG, Toast.LENGTH_SHORT).show(); }
আপনি কীভাবে অ্যাডঅনপেজলাইজনার ব্যবহারকারী তা তালিকাভুক্ত করুন
ভিউপেজ.আরডিঅনপেজ চ্যাঞ্জলিস্টনার প্রবেশ করুন (নতুন ভিউপেজ.অনপেজ চ্যাঞ্জলিস্টেনার () current বর্তমান বর্তমান অবস্থান = 0;
@Override
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
}
@Override
public void onPageSelected(int position) {
FragmentLifecycle fragmentLifecycleToShow =(FragmentLifecycle) viewPager.getAdapter().instantiateItem(viewPager, viewPager.getCurrentItem());
fragmentLifecycleToShow.onResumeFragment();
FragmentLifecycle fragmentLifecycleToHide =(FragmentLifecycle) viewPager.getAdapter().instantiateItem(viewPager, currentPosition);
fragmentLifecycleToHide.onPauseFragment();
currentPosition = position;
}
@Override
public void onPageScrollStateChanged(int state) {
}
});
অন কলস ফ্রেমমেন্ট () বা অন-রেজিউমফ্র্যাগমেন্ট () এ আপনার কলগুলি প্রয়োগ করুন