Как изменить текущую вкладку на HomeActivity Когда нажата кнопка в меню ящика?SlidingTabLayout getCurrentItem() on onClick() элемент меню ящика
View created on SlidingTabsBasicFragment.java. Он призвал HomeActivity.java DrawerMenu в HomeActivity, так что мне нужно изменить текущую вкладку на HomeActivity, когда пункт меню ящика щелчка.
PS: Извините за мой английский :)
HomeActivity.java
...
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(com.tagwishes.fc.R.layout.activity_home);
if (savedInstanceState == null) {
FragmentTransaction transaction = getSupportFragmentManager().beginTransaction();
SlidingTabsBasicFragment fragment = new SlidingTabsBasicFragment();
transaction.replace(R.id.sample_content_fragment, fragment);
transaction.commit();
}
...
мне нужно что-то это:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(com.tagwishes.fc.R.layout.activity_home);
if (savedInstanceState == null) {
FragmentTransaction transaction = getSupportFragmentManager().beginTransaction();
SlidingTabsBasicFragment fragment = new SlidingTabsBasicFragment();
transaction.replace(R.id.sample_content_fragment, fragment);
transaction.commit();
}
btn = (Button) findViewById(R.id.btn);
OnClickListener oclBtn = new OnClickListener() {
@Override
public void onClick(View v) {
//HOW TO GET mViewPager
mViewPager.setCurrentItem(3);// 3 FOR EXAMPLE
}
};
btn.setOnClickListener(oclBtn);
mViewPager называется в SlidingTabsBasicFragment.class
@Override
public void onViewCreated(View view, Bundle savedInstanceState) {
// BEGIN_INCLUDE (setup_viewpager)
// Get the ViewPager and set it's PagerAdapter so that it can display items
mViewPager = (ViewPager) view.findViewById(R.id.viewpager);
mViewPager.setAdapter(new SamplePagerAdapter());
// END_INCLUDE (setup_viewpager)
// BEGIN_INCLUDE (setup_slidingtablayout)
// Give the SlidingTabLayout the ViewPager, this must be done AFTER the ViewPager has had
// it's PagerAdapter set.
mSlidingTabLayout = (SlidingTabLayout) view.findViewById(R.id.sliding_tabs);
mSlidingTabLayout.setCustomTabView(R.layout.custom_tab, 0);
//mSlidingTabLayout.setSelectedIndicatorColors(R.color.bg_register);
mSlidingTabLayout.setViewPager(mViewPager);
// END_INCLUDE (setup_slidingtablayout)
}
Попробуйте статический экземпляр ViewPager, он, безусловно, будет работать – Abhishek
Не могли бы вы привести пример кода, пожалуйста? –