diff options
Diffstat (limited to 'packages/SettingsLib')
-rw-r--r-- | packages/SettingsLib/ButtonPreference/Android.bp | 4 | ||||
-rw-r--r-- | packages/SettingsLib/ButtonPreference/src/com/android/settingslib/widget/ButtonPreference.java | 24 |
2 files changed, 28 insertions, 0 deletions
diff --git a/packages/SettingsLib/ButtonPreference/Android.bp b/packages/SettingsLib/ButtonPreference/Android.bp index 0382829b2652..08dd27fd25ce 100644 --- a/packages/SettingsLib/ButtonPreference/Android.bp +++ b/packages/SettingsLib/ButtonPreference/Android.bp @@ -24,4 +24,8 @@ android_library { sdk_version: "system_current", min_sdk_version: "21", + apex_available: [ + "//apex_available:platform", + "com.android.healthfitness", + ], } diff --git a/packages/SettingsLib/ButtonPreference/src/com/android/settingslib/widget/ButtonPreference.java b/packages/SettingsLib/ButtonPreference/src/com/android/settingslib/widget/ButtonPreference.java index 993555e78bea..be711accd542 100644 --- a/packages/SettingsLib/ButtonPreference/src/com/android/settingslib/widget/ButtonPreference.java +++ b/packages/SettingsLib/ButtonPreference/src/com/android/settingslib/widget/ButtonPreference.java @@ -247,4 +247,28 @@ public class ButtonPreference extends Preference implements GroupSectionDividerM mButton.setLayoutParams(lp); } } + + /** + * Sets the style of the button. + * + * @param type Specifies the button's type, which sets the attribute `buttonPreferenceType`. + * Possible values are: + * <ul> + * <li>0: filled</li> + * <li>1: tonal</li> + * <li>2: outline</li> + * </ul> + * @param size Specifies the button's size, which sets the attribute `buttonPreferenceSize`. + * Possible values are: + * <ul> + * <li>0: normal</li> + * <li>1: large</li> + * <li>2: extra large</li> + * </ul> + */ + public void setButtonStyle(int type, int size) { + int layoutId = ButtonStyle.getLayoutId(type, size); + setLayoutResource(layoutId); + notifyChanged(); + } } |