diff options
| author | Alice Yang <alice@google.com> | 2012-05-31 15:48:51 -0700 |
|---|---|---|
| committer | Alice Yang <alice@google.com> | 2012-05-31 15:48:51 -0700 |
| commit | 6cab5e823a0053c60576c65cd307c865512eac38 (patch) | |
| tree | 937ebe83794b27c43b1e1a468601a4447fe1b342 /core | |
| parent | 593b4446fd5cac974b86988cbd03f5a8c1a4862d (diff) | |
| download | frameworks_base-6cab5e823a0053c60576c65cd307c865512eac38.zip frameworks_base-6cab5e823a0053c60576c65cd307c865512eac38.tar.gz frameworks_base-6cab5e823a0053c60576c65cd307c865512eac38.tar.bz2 | |
Fix bug where existing account not pre-checked
The fix was to call ListView.setItemChecked()
instead of ListView.setSelection() for setting radio button status.
Also refactored the code a bit so it's less verbose.
Bug 6588533
Change-Id: I8add072a0277183baec7c0d5634a28f2d3a28c5e
Diffstat (limited to 'core')
| -rw-r--r-- | core/java/android/accounts/ChooseTypeAndAccountActivity.java | 24 |
1 files changed, 8 insertions, 16 deletions
diff --git a/core/java/android/accounts/ChooseTypeAndAccountActivity.java b/core/java/android/accounts/ChooseTypeAndAccountActivity.java index 8543848..6b3b7fd 100644 --- a/core/java/android/accounts/ChooseTypeAndAccountActivity.java +++ b/core/java/android/accounts/ChooseTypeAndAccountActivity.java @@ -22,7 +22,6 @@ import android.os.Parcelable; import android.text.TextUtils; import android.util.Log; import android.view.View; -import android.view.ViewGroup; import android.widget.AdapterView; import android.widget.ArrayAdapter; import android.widget.Button; @@ -280,23 +279,16 @@ public class ChooseTypeAndAccountActivity extends Activity if (selectedAddNewAccount) { mSelectedItemIndex = mAccounts.size(); } - if (Log.isLoggable(TAG, Log.VERBOSE)) { - Log.v(TAG, "mSelectedItemIndex is " + mSelectedItemIndex); - } - - ViewGroup buttonBar = (ViewGroup) findViewById(R.id.button_bar); - if (buttonBar != null) { - mOkButton = (Button) buttonBar.findViewById(android.R.id.button2); - if (mSelectedItemIndex != SELECTED_ITEM_NONE) { - // If caller specified a selectedAccount, then display that as selected and enable - // the "OK" button by default. - list.setSelection(mSelectedItemIndex); - mOkButton.setEnabled(true); - } else { - // Otherwise "OK" button is disabled since nothing is pre-selected. - mOkButton.setEnabled(false); + if (mSelectedItemIndex != SELECTED_ITEM_NONE) { + list.setItemChecked(mSelectedItemIndex, true); + if (Log.isLoggable(TAG, Log.VERBOSE)) { + Log.v(TAG, "List item " + mSelectedItemIndex + " should be selected"); } } + + // Only enable "OK" button if something has been selected. + mOkButton = (Button) findViewById(android.R.id.button2); + mOkButton.setEnabled(mSelectedItemIndex != SELECTED_ITEM_NONE); } @Override |
