Fix active tab lost on rotation (#221)

This commit is contained in:
Kevin Sicong Jiang
2021-05-02 05:41:19 +08:00
committed by GitHub
parent d8d8a59707
commit 4a1858e47b

View File

@@ -50,6 +50,8 @@ import java.util.HashMap;
import java.util.List;
import java.util.Locale;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.appcompat.app.ActionBar;
import androidx.appcompat.app.AlertDialog;
import androidx.appcompat.app.AppCompatActivity;
@@ -59,7 +61,7 @@ import androidx.fragment.app.DialogFragment;
public class LoyaltyCardEditActivity extends AppCompatActivity
{
private static final String TAG = "Catima";
private final String STATE_TAB_INDEX = "savedTab";
TabLayout tabs;
ImageView thumbnail;
@@ -115,6 +117,20 @@ public class LoyaltyCardEditActivity extends AppCompatActivity
+ ", updateLoyaltyCard=" + updateLoyaltyCard);
}
@Override
public void onSaveInstanceState(@NonNull Bundle savedInstanceState) {
super.onSaveInstanceState(savedInstanceState);
tabs = findViewById(R.id.tabs);
savedInstanceState.putInt(STATE_TAB_INDEX, tabs.getSelectedTabPosition());
}
@Override
public void onRestoreInstanceState(@NonNull Bundle savedInstanceState) {
super.onRestoreInstanceState(savedInstanceState);
tabs = findViewById(R.id.tabs);
tabs.selectTab(tabs.getTabAt(savedInstanceState.getInt(STATE_TAB_INDEX)));
}
@Override
protected void onCreate(Bundle savedInstanceState)
{