Button 如何使用Trigger.io在iOS7和iOS6的topbar中使用黑白按钮?

Button 如何使用Trigger.io在iOS7和iOS6的topbar中使用黑白按钮?,button,trigger.io,Button,Trigger.io,使用带有浅色内容样式的黑色色调: forge.topbar.removeButtons() forge.topbar.setStatusBarStyle("light_content") forge.topbar.setTint([0,0,0,255]) 添加按钮。图像是透明的黑色。png的: { icon: 'images/info.png' , tint: [255,255,255,255] , position: 'right' } 这适用于iOS7,但是在iOS6中,按钮内

使用带有浅色内容样式的黑色色调:

forge.topbar.removeButtons()
forge.topbar.setStatusBarStyle("light_content")
forge.topbar.setTint([0,0,0,255])
添加按钮。图像是透明的黑色。png的:

{
   icon: 'images/info.png'
 , tint: [255,255,255,255]
 , position: 'right'
}
这适用于iOS7,但是在iOS6中,按钮内的白色背景上显示黑色。我尝试过反转图像,透明的是白色,黑色的是白色-我无法让黑色按钮图像上的白色同时在iOS6和iOS7上工作


有没有办法创建映像或指定forge API调用来实现这一点?还是forge topbar实现中存在缺陷?

这是由于iOS 7显示topbar和tabbar的基本方式发生了变化。Trigger提供的API试图在不同版本之间尽可能接近,但有时必须以不同的方式显示以支持新的平台功能

最简单的方法是检测iOS 7并运行不同的代码,您可以按如下方式执行:

 if (navigator.userAgent.match(/(iPad|iPhone);.*CPU.*OS 7_\d/i) !== null) {
     // iOS 7 specific code
 } else {
     // iOS 6 and lower specific code
 }

这是由于iOS 7显示topbar和tabbar的基本方式发生了变化。Trigger提供的API试图在不同版本之间尽可能接近,但有时必须以不同的方式显示以支持新的平台功能

最简单的方法是检测iOS 7并运行不同的代码,您可以按如下方式执行:

 if (navigator.userAgent.match(/(iPad|iPhone);.*CPU.*OS 7_\d/i) !== null) {
     // iOS 7 specific code
 } else {
     // iOS 6 and lower specific code
 }

对于黑色按钮上的白色(基于透明png上的白色(或黑色))按钮,根据Connor提供的用户代理检测切换色调:

var tint = (navigator.userAgent.match(/(iPad|iPhone);.*CPU.*OS 7_\d/i) !== null)
     ? [255,255,255,255] 
     : [0,0,0,255];

此外,顶栏图标的图像大小应为44x44像素,而不是从文档中推断的64x64。

对于黑色按钮上的白色按钮(基于透明png上的白色(或黑色)按钮),根据Connor提供的用户代理检测切换色调:

var tint = (navigator.userAgent.match(/(iPad|iPhone);.*CPU.*OS 7_\d/i) !== null)
     ? [255,255,255,255] 
     : [0,0,0,255];

此外,顶栏图标的图像大小应为44x44像素,而不是从文档中推断的64x64。

定义“有效的组合”编辑问题以澄清。基本上,我不能让黑对白同时适用于iOS7和iOS6。基本上,我不能让黑白相间的模式同时适用于iOS7和iOS6。感谢大家的努力。由于Tigger.IO为iOS v Android提供了抽象,我不希望为不同版本的iOS提供黑客攻击。感谢您的努力。由于Tigger.IO为iOS v Android提供了抽象,因此我不希望为不同版本的iOS提供黑客攻击。