diff --git a/src/com/cyanogenmod/setupwizard/setup/ChooseDataSimPage.java b/src/com/cyanogenmod/setupwizard/setup/ChooseDataSimPage.java index f531c0e3..5c9c06b7 100644 --- a/src/com/cyanogenmod/setupwizard/setup/ChooseDataSimPage.java +++ b/src/com/cyanogenmod/setupwizard/setup/ChooseDataSimPage.java @@ -81,7 +81,7 @@ public class ChooseDataSimPage extends SetupPage { private SparseArray mCheckBoxes; private TelephonyManager mPhone; - private List mSubInfoRecords; + private SparseArray mSubInfoRecords; private SparseArray mSignalStrengths; private SparseArray mServiceStates; private SparseArray mPhoneStateListeners; @@ -102,8 +102,13 @@ public class ChooseDataSimPage extends SetupPage { @Override protected void initializePage() { mPageView = (ViewGroup)mRootView.findViewById(R.id.page_view); - mSubInfoRecords = SubscriptionManager.getActiveSubInfoList(); - int simCount = mSubInfoRecords.size(); + List subInfoRecords = SubscriptionManager.getActiveSubInfoList(); + int simCount = subInfoRecords.size(); + mSubInfoRecords = new SparseArray(simCount); + for (int i = 0; i < simCount; i++) { + SubInfoRecord subInfoRecord = subInfoRecords.get(i); + mSubInfoRecords.put(subInfoRecord.slotId, subInfoRecord); + } mNameViews = new SparseArray(simCount); mSignalViews = new SparseArray(simCount); mCheckBoxes = new SparseArray(simCount);