0
我有一個名爲「主」與三個片段與選項卡1,選項卡2,選項卡3。當tab1可見並且app進入後臺然後繼續時,tab2會顯示給我而不是tab1。我要如何解決這個issue.I取得了代碼請查如何恢復Android中恢復活動中的現有選項卡?
代碼: -
@Override
protected void onResume() {
super.onResume();
Log.e(TAG, "onResume called::");
if (viewPagerCurrentPosition!=0){
viewPager.setCurrentItem(viewPagerCurrentPosition);
}
if (cCustomAlertAdDialog.isShowing()) {
cCustomAlertAdDialog.dismiss();
}
cCustomAlertAdDialog = new CCustomAlertAdDialog(HomeScreenActivity.this);
// set tabs and fragments in view pager
setTabAndViewPager();
/*Reward code*/
initDrawer();
}
@Override
public void onTabSelected(TabLayout.Tab tab) {
viewPager.setCurrentItem(tab.getPosition());
}
@Override
public void onTabReselected(TabLayout.Tab tab) {
}
@Override
public void onTabUnselected(TabLayout.Tab tab) {
}
@Override
protected void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
outState.putInt("viewpagerCurrentPosition",viewPager.getCurrentItem());
Log.e(TAG,"Current position of tab::"+viewPager.getCurrentItem());
}
@Override
protected void onRestoreInstanceState(Bundle savedInstanceState) {
super.onRestoreInstanceState(savedInstanceState);
viewPagerCurrentPosition = savedInstanceState.getInt("viewpagerCurrentPosition");
Log.e(TAG,"Saved position of tab::"+viewPagerCurrentPosition);
}
和onRestart
我用下面這行代碼: -
if (viewPagerCurrentPosition!=0){
viewPager.setCurrentItem(viewPagerCurrentPosition);
}
上面的代碼是不工作在我的場景中
做的東西在簡歷 –
保存在靜態變量,比標籤的位置使用像viewPager.setCurrentItem變量( 「YOUR_STATIC_VARIABLE」);在你的簡歷方法 –
請編輯我的代碼我是新的 – Niraj