आज मैं सेट करने की कोशिश कर रहा हूं 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();
}
दिखाए गए अनुसार viewpager में हर टुकड़े में इंटरफ़ेस को लागू करें
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(); }
सूची यह है कि कैसे यू उपयोगकर्ता addOnPageListener है
व्यूपावर दर्ज करें।
@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) {
}
});
OnPauseFragment () या onResumeFragment () में अपनी कॉल लागू करें