问题
I have a tabbed activity with 5 tabs. Each tab has only one Imageview. On a previous page I have 5 buttons and I want to create an interface such that each button starts the tabbed activity but the first tab which is visible is specific to that button. eg. gallery apps open a specific tab corresponding to the thumnail of the photo and are also left/right swappable.
回答1:
You can pass the tab id you want to open as an extra to the Intent
you are creating. Then in the tabbed Activity
, assuming you are using TabLayout
, you can do something like this -
TabLayout tabLayout = (TabLayout) findViewById(R.id.tabs);
TabLayout.Tab tab = tabLayout.getTabAt(getIntent().getStringExtra("selected_index"));
tab.select();
回答2:
Try This
First activity
int page = 2; Intent intent = new Intent(FirstActivity.this,TabActivityClass.class); intent.putExtra("One", page);// One is your argument startActivity(intent);
2.In oncreate method of TabActivity class
int defaultValue = 0; int page = getIntent().getIntExtra("One", defaultValue); viewPager.setCurrentItem(page);
来源:https://stackoverflow.com/questions/36583719/intent-to-open-a-specific-tab-of-tabbed-activity