Merge "Clear UsageProgressBarPreference image view before setting images" into sc-dev
This commit is contained in:
@@ -160,6 +160,7 @@ public class UsageProgressBarPreference extends Preference {
|
||||
customLayout.removeAllViews();
|
||||
customLayout.setVisibility(View.GONE);
|
||||
} else {
|
||||
customLayout.removeAllViews();
|
||||
customLayout.addView(mCustomImageView);
|
||||
customLayout.setVisibility(View.VISIBLE);
|
||||
}
|
||||
|
||||
@@ -127,4 +127,20 @@ public class UsageProgressBarPreferenceTest {
|
||||
assertThat(customContent.getChildAt(0)).isEqualTo(imageView);
|
||||
assertThat(customContent.getVisibility()).isEqualTo(View.VISIBLE);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void setCustomContent_setImageViewTwice_oneAndLatestChild() {
|
||||
final ImageView imageViewLegacy = mock(ImageView.class);
|
||||
final ImageView imageViewNew = mock(ImageView.class);
|
||||
mUsageProgressBarPreference.setCustomContent(imageViewLegacy);
|
||||
mUsageProgressBarPreference.setCustomContent(imageViewNew);
|
||||
|
||||
mUsageProgressBarPreference.onBindViewHolder(mViewHolder);
|
||||
|
||||
final FrameLayout customContent =
|
||||
(FrameLayout) mViewHolder.findViewById(R.id.custom_content);
|
||||
assertThat(customContent.getChildCount()).isEqualTo(1);
|
||||
assertThat(customContent.getChildAt(0)).isEqualTo(imageViewNew);
|
||||
assertThat(customContent.getVisibility()).isEqualTo(View.VISIBLE);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user