diff --git a/src/com/android/settings/deviceinfo/PrivateVolumeSettings.java b/src/com/android/settings/deviceinfo/PrivateVolumeSettings.java index e57231e988a..b0685cfa77f 100644 --- a/src/com/android/settings/deviceinfo/PrivateVolumeSettings.java +++ b/src/com/android/settings/deviceinfo/PrivateVolumeSettings.java @@ -269,7 +269,7 @@ public class PrivateVolumeSettings extends SettingsPreferenceFragment { result.value, result.units)); mSummary.setSummary(getString(R.string.storage_volume_used, Formatter.formatFileSize(context, mTotalSize))); - mSummary.setPercent((int) ((usedBytes * 100) / mTotalSize)); + mSummary.setPercent(usedBytes, mTotalSize); mMeasure.forceMeasure(); mNeedsUpdate = false; diff --git a/src/com/android/settings/deviceinfo/PublicVolumeSettings.java b/src/com/android/settings/deviceinfo/PublicVolumeSettings.java index fccd44017ae..ca0348c2b25 100644 --- a/src/com/android/settings/deviceinfo/PublicVolumeSettings.java +++ b/src/com/android/settings/deviceinfo/PublicVolumeSettings.java @@ -166,7 +166,7 @@ public class PublicVolumeSettings extends SettingsPreferenceFragment { result.value, result.units)); mSummary.setSummary(getString(R.string.storage_volume_used, Formatter.formatFileSize(context, totalBytes))); - mSummary.setPercent((int) ((usedBytes * 100) / totalBytes)); + mSummary.setPercent(usedBytes, totalBytes); } if (mVolume.getState() == VolumeInfo.STATE_UNMOUNTED) { diff --git a/src/com/android/settings/deviceinfo/StorageSummaryPreference.java b/src/com/android/settings/deviceinfo/StorageSummaryPreference.java index e1cf7742ef7..f97f049ac91 100644 --- a/src/com/android/settings/deviceinfo/StorageSummaryPreference.java +++ b/src/com/android/settings/deviceinfo/StorageSummaryPreference.java @@ -20,6 +20,7 @@ import android.content.Context; import android.graphics.Color; import android.support.v7.preference.Preference; import android.support.v7.preference.PreferenceViewHolder; +import android.util.MathUtils; import android.view.View; import android.widget.ProgressBar; import android.widget.TextView; @@ -36,8 +37,9 @@ public class StorageSummaryPreference extends Preference { setEnabled(false); } - public void setPercent(int percent) { - mPercent = percent; + public void setPercent(long usedBytes, long totalBytes) { + mPercent = MathUtils.constrain((int) ((usedBytes * 100) / totalBytes), + (usedBytes > 0) ? 1 : 0, 100); } @Override