【发布时间】:2023-03-19 04:23:01
【问题描述】:
在我的应用程序中使用the official "Buy with Google Pay" assets 创建无阴影按钮时,黑色按钮的边距比白色按钮多。
如下图所示,当使用夜间和白天模式的按钮时,差异很明显。
【问题讨论】:
标签: android nine-patch google-pay android-night-mode
在我的应用程序中使用the official "Buy with Google Pay" assets 创建无阴影按钮时,黑色按钮的边距比白色按钮多。
如下图所示,当使用夜间和白天模式的按钮时,差异很明显。
【问题讨论】:
标签: android nine-patch google-pay android-night-mode
这是因为 Google 提供的“影子”资产与“非影子”资产不一致。这可以通过比较/app/[colour]/res/drawable-xhdpi/ 中的 9patch PNG 来看出:
请注意,虽然每个阴影图像是相同的,但 _no_shadow 变体不是。黑色资源在边缘周围(在 9patch 黑色边框之前)有额外的边距,导致按钮外观略有不同。
虽然理想的解决方案是让 Google 更新提供的资产,但直接的解决方案是将提供的资产替换为像白色资产这样没有边距的资产。我已经创建了一个已经进行过这种处理的集合。
要使用图像,请将每个图像保存在适当的drawable-x 目录中,并保存为googlepay_button_no_shadow_background_image.9.png。
【讨论】: