Tweak UI of CardPreference and ContextualCard

- CardPreference uses settingslib_preference
  layout to fix title/summary alignment issue.

- Remove stroke for CardPreference and ContextualCard.

- Set colorSurface as default card background color.

Bug: 188599776
Test: manual visual
Change-Id: Id0ee40be60de1f7605849490ee43eae4b9420abb
This commit is contained in:
Arc Wang
2021-06-09 09:23:00 +08:00
parent 7b85f2af24
commit bdb70b1078
8 changed files with 8 additions and 107 deletions

View File

@@ -18,26 +18,13 @@ package com.android.settings.widget;
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.verify;
import android.content.Context;
import android.view.View;
import androidx.annotation.ColorInt;
import androidx.preference.PreferenceViewHolder;
import com.android.settings.R;
import com.google.android.material.card.MaterialCardView;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Mock;
import org.mockito.MockitoAnnotations;
import org.robolectric.RobolectricTestRunner;
import org.robolectric.RuntimeEnvironment;
@@ -46,34 +33,16 @@ public class CardPreferenceTest {
private Context mContext;
private CardPreference mCardPreference;
@Mock
private PreferenceViewHolder mPreferenceViewHolder;
@Mock
private MaterialCardView mCardView;
@Before
public void setUp() {
MockitoAnnotations.initMocks(this);
mContext = RuntimeEnvironment.application;
mContext.setTheme(R.style.SettingsPreferenceTheme);
mCardPreference = new CardPreference(mContext);
mPreferenceViewHolder = spy(PreferenceViewHolder.createInstanceForTests(mock(View.class)));
doReturn(mCardView).when(mPreferenceViewHolder).findViewById(R.id.container);
}
@Test
public void getLayoutResource() {
assertThat(mCardPreference.getLayoutResource()).isEqualTo(R.layout.card_preference_layout);
}
@Test
public void setCardBackgroundColor_shouldUseCorrectColor() {
final @ColorInt int testColor = 0xABCDEF;
mCardPreference.setCardBackgroundColor(testColor);
mCardPreference.onBindViewHolder(mPreferenceViewHolder);
verify(mCardView).setCardBackgroundColor(testColor);
}
}