【问题标题】:Button Visibility property not working on iOS in Kony按钮可见性属性在 Kony 的 iOS 上不起作用
【发布时间】:2019-04-08 01:00:47
【问题描述】:

我正在 Kony 的一个项目中工作,我想在某个项目上隐藏一个按钮 条件。

我使用了下面给出的代码,它可以在 Android 上运行,但不能在 iOS 上运行。我还使用调试器进行了检查,一切都很好,而且我在调试模式下得到了值,即 True/False。但仅在 iOS 设备上不隐藏按钮。

最初,我将 Button 的可见性设置为“True”,并在表单的 Postshow 中调用 Service 函数。 因此,在 Postshow Call 期间,它应该检查条件并更改按钮的可见性属性。

我使用了以下代码(MVC 模式):

if(condition==true)  //some condition
{
this.view.BtnBack.isVisible=False;
}
else 
{
this.view.BtnBack.isVisible=True;
}

注意: 以上代码适用于 Android、SPA Android 但不适用于 iOS 设备。

救命!

【问题讨论】:

    标签: javascript android ios iphone temenos-quantum


    【解决方案1】:

    您没有将布尔值写为 True/False,而是尝试将它们设置为 true/false。因为我认为布尔值在 javascript 中不区分大小写。

    【讨论】:

    • 是的,布尔值对于 kony 中的 JS 是区分大小写的。是的,我也尝试过,但它不起作用。
    【解决方案2】:

    最后,我找到了解决方案,并且成功了。

    解决办法是:

    我为那个按钮创建了 2 个皮肤

    1) “SkinHide” -> 背景颜色不透明度为 0%

    2) “SkinHide” -> 我使用背景图像代替背景颜色并将不透明度保持为 100%。

    还根据我的情况将“SetEnabled”属性应用于 True/False。

    以下是代码片段:

    if(id=="cat00000")
     {
         this.view.tmpHeader.btnBack.skin="SkinHide";
         this.view.tmpHeader.btnBack.setEnabled(false)                      
      }
     else
      {
         this.view.tmpHeader.btnBack.skin="SkinShow";
         this.view.tmpHeader.btnBack.setEnabled(true);
       }
    

    编码愉快!

    【讨论】:

      【解决方案3】:

      而不是更改小部件的属性(isVisible)。尝试使用按钮的 setVisibility 方法。我很确定它有效。 示例代码sn-p:

      this.view.BtnBack.setVisibility(true); // makes the button visible
      

      【讨论】:

        猜你喜欢
        • 2018-05-29
        • 1970-01-01
        • 2017-12-18
        • 2019-09-05
        • 1970-01-01
        • 2012-06-15
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多