uni-app 一键登录自定义checkbox有问题,安卓和iOS表现不一致
uni-app 一键登录自定义checkbox有问题,安卓和iOS表现不一致
测试过的手机
iphoneX,小米10
示例代码:
"privacyTerms": {
"checkBoxSize":"16px",
"defaultCheckBoxState": "false", // 条款勾选框初始状态 默认值: true
"uncheckedImage":"/static/uncheckedImage.png", // 可选 条款勾选框未选中状态图片(仅支持本地图片 建议尺寸 24x24px)(3.2.0+ 版本支持)
"checkedImage":"/static/checkedImage.png", // 可选 条款勾选框选中状态图片(仅支持本地图片 建议尺寸24x24px)(3.2.0+ 版本支持)
// "textColor": "#8a8b90", // 文字颜色 默认值:#8a8b90
"termsColor": "#D2A878", // 协议文字颜色 默认值: #1d4788
"prefix": "我已阅读并同意", // 条款前的文案 默认值:“我已阅读并同意”
"suffix": "并使用本机号码登录", // 条款后的文案 默认值:“并使用本机号码登录”
"fontSize": 12, // 隐私协议文字大小 (仅android 支持)
}
操作步骤:
- privacyTerms下给uncheckedImage和checkedImage设置图片
预期结果:
- 未选中显示未选中的图片,选中显示选中的图片
实际结果:
- iOS和安卓反了,安卓默认不选中的情况,显示的是checkedImage
bug描述:
“uncheckedImage”:"/static/uncheckedImage.png", // 可选 条款勾选框未选中状态图片(仅支持本地图片 建议尺寸 24x24px)(3.2.0+ 版本支持) “checkedImage”:"/static/checkedImage.png", // 可选 条款勾选框选中状态图片(仅支持本地图片 建议尺寸24x24px)(3.2.0+ 版本支持)
uncheckedImage在iOS上表现正常,就是未被选中状态,在安卓上却是表示选中状态
checkedImage在iOS上表现正常,就是被选中状态,在安卓上却是表示未选中状态
总之iOS和安卓反了。。。。
还有checkBoxSize设置大小,安卓有效,iOS无效,iOS的也太小了,能不能也一起兼容了?

更多关于uni-app 一键登录自定义checkbox有问题,安卓和iOS表现不一致的实战教程也可以访问 https://www.itying.com/category-93-b0.html
你一键登入打包后能正常允许吗?
更多关于uni-app 一键登录自定义checkbox有问题,安卓和iOS表现不一致的实战教程也可以访问 https://www.itying.com/category-93-b0.html
可以
运行
用3.2.2 alpha 版本 bug已修复
这个问题3.3.11又出现了
回复 大凤: 今天会发版本修复这个问题
回复 DCloud_Android_DQQ: 用最新版的,ios还是改不了
这是一个已知的跨平台兼容性问题。在uni-app一键登录的隐私条款配置中,uncheckedImage和checkedImage参数在iOS和Android平台上的行为确实不一致。
问题分析:
- 图片状态反转问题:Android平台将
uncheckedImage误用为选中状态图片,checkedImage误用为未选中状态图片,与iOS平台行为相反。 - 复选框尺寸问题:
checkBoxSize参数在Android平台有效,但在iOS平台无效,导致iOS端复选框显示过小。
临时解决方案: 由于这是框架层面的平台差异,建议采用条件编译处理:
"privacyTerms": {
// 公共配置
"defaultCheckBoxState": false,
"prefix": "我已阅读并同意",
"suffix": "并使用本机号码登录",
"termsColor": "#D2A878",
// 平台特定配置
#ifdef APP-PLUS
"checkBoxSize": "16px",
#endif
#ifdef APP-ANDROID
// Android平台需要交换图片定义
"uncheckedImage": "/static/checkedImage.png",
"checkedImage": "/static/uncheckedImage.png",
#endif
#ifdef APP-IOS
// iOS平台使用正常定义
"uncheckedImage": "/static/uncheckedImage.png",
"checkedImage": "/static/checkedImage.png",
#endif
}

