Merge "Add sim color selection in settings" into lmp-mr1-dev

This commit is contained in:
Sanket Padawe
2014-10-28 22:48:33 +00:00
committed by Android (Google) Code Review
5 changed files with 83 additions and 23 deletions

View File

@@ -16,6 +16,7 @@
package com.android.settings.sim;
import android.graphics.Color;
import android.provider.SearchIndexableResource;
import com.android.settings.R;
@@ -463,6 +464,7 @@ public class SimSettings extends RestrictedSettingsFragment implements Indexable
private class SimPreference extends Preference{
private SubInfoRecord mSubInfoRecord;
private int mSlotId;
private int[] colorArr;
public SimPreference(Context context, SubInfoRecord subInfoRecord, int slotId) {
super(context);
@@ -471,6 +473,7 @@ public class SimSettings extends RestrictedSettingsFragment implements Indexable
mSlotId = slotId;
setKey("sim" + mSlotId);
update();
colorArr = context.getResources().getIntArray(R.array.sim_colors);
}
public void update() {
@@ -530,6 +533,31 @@ public class SimSettings extends RestrictedSettingsFragment implements Indexable
EditText nameText = (EditText)dialogLayout.findViewById(R.id.sim_name);
nameText.setText(mSubInfoRecord.displayName);
final Spinner colorSpinner = (Spinner) dialogLayout.findViewById(R.id.spinner);
ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(getContext(),
R.array.color_picker, android.R.layout.simple_spinner_item);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
colorSpinner.setAdapter(adapter);
for (int i = 0; i < colorArr.length; i++) {
if (colorArr[i] == mSubInfoRecord.color) {
colorSpinner.setSelection(i);
break;
}
}
colorSpinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view,
int pos, long id){
colorSpinner.setSelection(pos);
}
@Override
public void onNothingSelected(AdapterView<?> parent) {
}
});
TextView numberView = (TextView)dialogLayout.findViewById(R.id.number);
numberView.setText(simPref.getFormattedPhoneNumber());
@@ -547,10 +575,14 @@ public class SimSettings extends RestrictedSettingsFragment implements Indexable
mSubInfoRecord.displayName = nameText.getText().toString();
SubscriptionManager.setDisplayName(mSubInfoRecord.displayName,
mSubInfoRecord.subId);
findRecordBySubId(mSubInfoRecord.subId).displayName =
nameText.getText().toString();
final int colorSelected = colorSpinner.getSelectedItemPosition();
mSubInfoRecord.color = colorArr[colorSelected];
SubscriptionManager.setColor(colorArr[colorSelected], mSubInfoRecord.subId);
findRecordBySubId(mSubInfoRecord.subId).color = colorArr[colorSelected];
updateAllOptions();
update();
}