我正在使用JS 3.0库在HERE Map上使用自定义创建的按钮。
我遵循了此处提供的HERE支持工程师的建议:HERE Map UI JS - How to add custom buttons to the Map UI?
到目前为止,我已经能够使其正常工作,但我发现我需要能够根据各种业务规则来启用或禁用该按钮。但是看来HERE控件或按钮没有“ setDisabled”功能吗?
https://developer.here.com/documentation/maps/api_reference/H.ui.Control.html https://developer.here.com/documentation/maps/api_reference/H.ui.base.Button.html#.State(我看到可以初始化要禁用的按钮,但不能更改现有按钮。每次需要启用或禁用按钮时,似乎都无法创建新按钮。)
有什么建议吗?
答案 0 :(得分:0)
请勿使用var ui = H.ui.UI.createDefault(map, maptypes, 'en-US');
行来禁用按钮或在按下某个按钮或通过语句时在“ if”语句中找到您自己的信息
答案 1 :(得分:0)
有一个setDisabled()
方法是从父类H.ui.base.Element
继承的,可以使用:
// assume custom UI control exists
customControl.setDisabled(true) // <- disables the control
customControl.setDisabled(false) // <- enables the control
文档似乎有问题,很遗憾,某些继承的方法未发布。团队已经意识到了这一点,并正在努力解决。
Here是自定义UI控件的jsfiddle工作示例,该示例在单击后会自行禁用。
有关更多详细信息,请参见H.ui.base.Element#setDisabled()。