首页 > 解决方案 > 为什么黑色无阴影“使用 Google Pay 购买”按钮变体与白色变体不匹配?

问题描述

当使用官方的“使用 Google Pay 购买”资产在我的应用程序中创建无阴影按钮时,黑色按钮在所有侧面的填充比白色按钮多。

如下图所示,当使用夜间和白天模式的按钮时,差异很明显。

夜间和灯光模式谷歌支付无影按钮

标签: androidnine-patchgoogle-payandroid-night-mode

解决方案


这是因为 Google 提供的“影子”资产与“非影子”资产不一致。这可以通过比较中的 9patch PNG 看出/app/[colour]/res/drawable-xhdpi/比较 google pay 9patches

请注意,虽然每个阴影图像是相同的,但_no_shadow变体不是。黑色资源在边缘(在 9patch 黑色边框之前)有额外的边距,导致按钮外观略有不同。

虽然理想的解决方案是让 Google 更新提供的资产,但直接的解决方案是用像白色资产这样没有边际的资产替换提供的资产。我创建了一个已经接受过这种处理的集合。

要使用图像,请将每个图像保存在适当的drawable-x目录中googlepay_button_no_shadow_background_image.9.png

密度 资产
MDPI MDPI
高密度脂蛋白 高密度脂蛋白
XHDPI XHDPI
XXHDPI XXHDPI
XXXHDPI XXXHDPI

推荐阅读