Well I'm using viewpager. I am creating views with this:
public class CrimePagerActivity extends FragmentActivity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
FragmentManager fm = getSupportFragmentManager();
mViewPager.setAdapter(new FragmentStatePagerAdapter(fm) {
@Override
public int getCount() {
return mSorus.size();
}
@Override
public Fragment getItem(int sorusirasi) {
return fragment.newInstance(sorusirasi);
}
});
I want to know which view is shown. Normally I can call ViewPager.getCurrentItem()
in a FragmentActivity
but in a Fragment how can I learn which view is currentitem.
In my case ,I have viewpager in fragmentactivity and add child fragment in view pager,and get the position of viewpager in child fragment like this:
In adapter's getItem:
@Override
public Fragment getItem(int position) {
Log.d("Click>>",">>"+position+" >>> "+position);
return OfferSingleFragment.newInstance(position);
}
And In OfferSingleFragment:
public static OfferSingleFragment newInstance(String string) {
OfferSingleFragment f = new OfferSingleFragment();
Bundle args = new Bundle();
args.putString("pos",string);
f.setArguments(args);
return f;
}
And In OnCreateView:
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// TODO Auto-generated method stub
View v = inflater.inflate(R.layout.single_layout,container,false);
View txt = v.findViewById(R.id.txt_title_singlelayout);
String t = getArguments().getString("pos") ;
Log.d("OnCreateView",">>"+t);
((TextView)txt).setText("Position"+">>"+t);
return v;
}
That's all.Hope it will help..