fix: align android typography with wechat density
This commit is contained in:
@@ -63,15 +63,16 @@ public class BossUiConversationRowTest {
|
||||
previewView.getMeasuredWidth(),
|
||||
previewView.getMeasuredHeight()
|
||||
);
|
||||
assertEquals("列表项应恢复成更紧凑的信息密度: " + metrics, BossUi.dp(context, 14), rowView.getPaddingLeft());
|
||||
assertEquals("列表项应恢复成更紧凑的信息密度: " + metrics, BossUi.dp(context, 8), rowView.getPaddingTop());
|
||||
assertEquals("列表项应恢复成更紧凑的信息密度: " + metrics, BossUi.dp(context, 14), rowView.getPaddingRight());
|
||||
assertEquals("列表项应恢复成更紧凑的信息密度: " + metrics, BossUi.dp(context, 8), rowView.getPaddingBottom());
|
||||
assertEquals("列表项应对标微信当前紧凑密度: " + metrics, BossUi.dp(context, 12), rowView.getPaddingLeft());
|
||||
assertEquals("列表项应对标微信当前紧凑密度: " + metrics, BossUi.dp(context, 6), rowView.getPaddingTop());
|
||||
assertEquals("列表项应对标微信当前紧凑密度: " + metrics, BossUi.dp(context, 12), rowView.getPaddingRight());
|
||||
assertEquals("列表项应对标微信当前紧凑密度: " + metrics, BossUi.dp(context, 6), rowView.getPaddingBottom());
|
||||
assertEquals("列表项不应保持卡片式浮层感: " + metrics, 0f, rowView.getElevation(), 0.01f);
|
||||
assertTrue("单条会话行不应再撑到接近 90dp: " + metrics, rowView.getMeasuredHeight() <= BossUi.dp(context, 78));
|
||||
assertEquals("会话头像应恢复到更克制的尺寸: " + metrics, BossUi.dp(context, 44), rowView.getChildAt(0).getLayoutParams().width);
|
||||
assertEquals("会话头像应恢复到更克制的尺寸: " + metrics, BossUi.dp(context, 44), rowView.getChildAt(0).getLayoutParams().height);
|
||||
assertEquals("标题字号应回到中等密度", 15f, titleView.getTextSize() / context.getResources().getDisplayMetrics().scaledDensity, 0.5f);
|
||||
assertTrue("单条会话行应维持微信式有效信息面积: " + metrics, rowView.getMeasuredHeight() <= BossUi.dp(context, 68));
|
||||
assertEquals("会话头像应回到微信列表的小尺寸: " + metrics, BossUi.dp(context, 40), rowView.getChildAt(0).getLayoutParams().width);
|
||||
assertEquals("会话头像应回到微信列表的小尺寸: " + metrics, BossUi.dp(context, 40), rowView.getChildAt(0).getLayoutParams().height);
|
||||
assertEquals("标题字号应对标微信列表主标题", 14f, titleView.getTextSize() / context.getResources().getDisplayMetrics().scaledDensity, 0.5f);
|
||||
assertEquals("预览字号应对标微信列表辅助文字", 11f, previewView.getTextSize() / context.getResources().getDisplayMetrics().scaledDensity, 0.5f);
|
||||
assertTrue("中间文字列不应被挤成 0 宽: " + metrics, centerColumn.getMeasuredWidth() > 0);
|
||||
assertTrue("标题需要保留可见宽度: " + metrics, titleView.getMeasuredWidth() > 0);
|
||||
assertTrue("预览需要保留可见宽度: " + metrics, previewView.getMeasuredWidth() > 0);
|
||||
|
||||
@@ -50,8 +50,8 @@ public class BossUiRootSurfaceTest {
|
||||
assertEquals("资料头不应保留浮层卡片感", 0f, header.getElevation(), 0.01f);
|
||||
assertTrue("资料头应保持横向布局", header instanceof LinearLayout);
|
||||
View avatar = ((LinearLayout) header).getChildAt(0);
|
||||
assertEquals("我的页头像应恢复到中等尺寸", BossUi.dp(activity, 56), avatar.getLayoutParams().width);
|
||||
assertEquals("我的页头像应恢复到中等尺寸", BossUi.dp(activity, 56), avatar.getLayoutParams().height);
|
||||
assertEquals("我的页头像应对标微信资料入口尺寸", BossUi.dp(activity, 52), avatar.getLayoutParams().width);
|
||||
assertEquals("我的页头像应对标微信资料入口尺寸", BossUi.dp(activity, 52), avatar.getLayoutParams().height);
|
||||
assertTrue(viewTreeContainsText(header, "Kris"));
|
||||
assertTrue(viewTreeContainsText(header, "krisolo"));
|
||||
assertTrue(viewTreeContainsText(header, "最高管理员"));
|
||||
@@ -105,12 +105,12 @@ public class BossUiRootSurfaceTest {
|
||||
assertEquals("会话", conversations.getText().toString());
|
||||
assertEquals("设备", devices.getText().toString());
|
||||
assertEquals("我的", me.getText().toString());
|
||||
assertEquals("顶部标题应恢复到更克制的字号", 20f, ((TextView) activity.findViewById(R.id.top_title)).getTextSize() / activity.getResources().getDisplayMetrics().scaledDensity, 0.5f);
|
||||
assertEquals("底栏高度应恢复到更紧凑的有效面积", BossUi.dp(activity, 58), ((View) conversations.getParent()).getLayoutParams().height);
|
||||
assertEquals("顶部标题应对标微信页面标题", 18f, ((TextView) activity.findViewById(R.id.top_title)).getTextSize() / activity.getResources().getDisplayMetrics().scaledDensity, 0.5f);
|
||||
assertEquals("底栏高度应对标微信底栏有效面积", BossUi.dp(activity, 54), ((View) conversations.getParent()).getLayoutParams().height);
|
||||
assertNotNull("会话 tab 应显示顶部图标", conversations.getCompoundDrawables()[1]);
|
||||
assertNotNull("设备 tab 应显示顶部图标", devices.getCompoundDrawables()[1]);
|
||||
assertNotNull("我的 tab 应显示顶部图标", me.getCompoundDrawables()[1]);
|
||||
assertEquals("底栏文字应保持小字号", 11f, conversations.getTextSize() / activity.getResources().getDisplayMetrics().scaledDensity, 0.5f);
|
||||
assertEquals("底栏文字应对标微信底栏标签", 10f, conversations.getTextSize() / activity.getResources().getDisplayMetrics().scaledDensity, 0.5f);
|
||||
}
|
||||
|
||||
private static boolean viewTreeContainsText(View root, String expectedText) {
|
||||
|
||||
@@ -21,9 +21,9 @@ public class BossUiTopActionStyleTest {
|
||||
|
||||
BossUi.applyTopIconButtonStyle(context, button);
|
||||
|
||||
assertEquals(BossUi.dp(context, 36), button.getMinimumWidth());
|
||||
assertEquals(BossUi.dp(context, 36), button.getMinimumHeight());
|
||||
assertEquals(BossUi.dp(context, 7), button.getPaddingLeft());
|
||||
assertEquals(BossUi.dp(context, 7), button.getPaddingTop());
|
||||
assertEquals(BossUi.dp(context, 34), button.getMinimumWidth());
|
||||
assertEquals(BossUi.dp(context, 34), button.getMinimumHeight());
|
||||
assertEquals(BossUi.dp(context, 6), button.getPaddingLeft());
|
||||
assertEquals(BossUi.dp(context, 6), button.getPaddingTop());
|
||||
}
|
||||
}
|
||||
|
||||
@@ -96,8 +96,8 @@ public class ConversationInfoActivityTest {
|
||||
SwitchCompat takeoverSwitch = findFirstSwitch(takeoverRow);
|
||||
|
||||
assertEquals(LinearLayout.HORIZONTAL, takeoverRow.getOrientation());
|
||||
assertEquals(BossUi.dp(activity, 14), takeoverRow.getPaddingLeft());
|
||||
assertEquals(BossUi.dp(activity, 14), takeoverRow.getPaddingRight());
|
||||
assertEquals(BossUi.dp(activity, 12), takeoverRow.getPaddingLeft());
|
||||
assertEquals(BossUi.dp(activity, 12), takeoverRow.getPaddingRight());
|
||||
assertNotNull(takeoverSwitch);
|
||||
assertEquals("", String.valueOf(takeoverSwitch.getText()));
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user