如何使用Trigger.io在iOS7和iOS6的顶部栏中使用黑色按钮获得白色?

时间:2013-11-21 17:30:51

标签: button trigger.io

使用light_content样式的黑色调:

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。

有没有办法创建图像或指定伪造API调用才能使其工作?或者它是伪造顶部栏实施中的错误?

2 个答案:

答案 0 :(得分:1)

这是由于iOS 7显示顶部栏和标签栏的基本方式的变化。 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
 }

答案 1 :(得分:0)

对于白色黑色按钮(基于透明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,可从文档中推断出来。