diff options
author | Maurice Lam <yukl@google.com> | 2017-11-02 20:52:08 -0700 |
---|---|---|
committer | Maurice Lam <yukl@google.com> | 2017-11-02 20:52:08 -0700 |
commit | 58195c5316855122593366bd867ed51a91bd5c11 (patch) | |
tree | b4541ea8100f4e7c743845331c7648b8e52df353 /library | |
parent | 88d7f0d37007e13601b6ead3ca039ece20ef94d7 (diff) | |
download | setupwizard-58195c5316855122593366bd867ed51a91bd5c11.tar.gz |
Hide icon view if icon is null
To remove the extra margin when the icon is not used.
Test: ./gradlew connectedAndroidTest
Bug: 68826871
Change-Id: Ic23307a28b2829fdbe029c61f912f04bab90ca13
Diffstat (limited to 'library')
3 files changed, 15 insertions, 1 deletions
diff --git a/library/main/res/layout/suw_glif_header.xml b/library/main/res/layout/suw_glif_header.xml index b090f79..cfabcb1 100644 --- a/library/main/res/layout/suw_glif_header.xml +++ b/library/main/res/layout/suw_glif_header.xml @@ -26,7 +26,8 @@ style="@style/SuwGlifIcon" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:contentDescription="@null" /> + android:contentDescription="@null" + android:visibility="gone" /> <TextView android:id="@+id/suw_layout_title" diff --git a/library/main/src/com/android/setupwizardlib/template/IconMixin.java b/library/main/src/com/android/setupwizardlib/template/IconMixin.java index 46c23f0..c42299b 100644 --- a/library/main/src/com/android/setupwizardlib/template/IconMixin.java +++ b/library/main/src/com/android/setupwizardlib/template/IconMixin.java @@ -20,6 +20,7 @@ import android.content.Context; import android.content.res.TypedArray; import android.graphics.drawable.Drawable; import android.util.AttributeSet; +import android.view.View; import android.widget.ImageView; import com.android.setupwizardlib.R; @@ -61,6 +62,7 @@ public class IconMixin implements Mixin { final ImageView iconView = getView(); if (iconView != null) { iconView.setImageDrawable(icon); + iconView.setVisibility(icon != null ? View.VISIBLE : View.GONE); } } diff --git a/library/test/instrumentation/src/com/android/setupwizardlib/template/IconMixinTest.java b/library/test/instrumentation/src/com/android/setupwizardlib/template/IconMixinTest.java index a1f2b54..0391392 100644 --- a/library/test/instrumentation/src/com/android/setupwizardlib/template/IconMixinTest.java +++ b/library/test/instrumentation/src/com/android/setupwizardlib/template/IconMixinTest.java @@ -31,6 +31,7 @@ import android.support.test.InstrumentationRegistry; import android.support.test.filters.SmallTest; import android.support.test.runner.AndroidJUnit4; import android.util.Xml; +import android.view.View; import android.widget.ImageView; import com.android.setupwizardlib.TemplateLayout; @@ -74,6 +75,15 @@ public class IconMixinTest { mixin.setIcon(drawable); assertSame(drawable, mIconView.getDrawable()); + assertEquals(View.VISIBLE, mIconView.getVisibility()); + } + + @Test + public void setIcon_shouldSetVisibilityToGone_whenIconIsNull() { + IconMixin mixin = new IconMixin(mTemplateLayout, null, 0); + mixin.setIcon(null); + + assertEquals(View.GONE, mIconView.getVisibility()); } @Test @@ -101,5 +111,6 @@ public class IconMixinTest { .getDrawable(android.R.drawable.ic_menu_add); final BitmapDrawable actual = (BitmapDrawable) mIconView.getDrawable(); assertEquals(expected.getBitmap(), actual.getBitmap()); + assertEquals(View.VISIBLE, mIconView.getVisibility()); } } |