首页 > 解决方案 > 带有 jasonett/iOS 的后退按钮

问题描述

我正在尝试创建一个后退按钮,当用户单击它时,它会将他们带到上一页。

我找到了 Jasonett 的作者发表的这篇中等帖子的代码,但它对我不起作用。它创建标签,但我无法点击它

"layers": [{
        "type": "label",
        "text": "",
        "style": {
          "top": "10",
          "right": "10",
          "width": "100",
          "height": "100"
        },
        "action": {
          "type": "$back"
        }
      }]

标签: iosjasonette

解决方案


来源:文档

该元素是可点击的,或者只有在项目级别时才能在标签上label附加一个。action

因此,例如,以下代码will接受触摸,并且在那里设置的操作可以正常工作。

{
  "items": [{
    "type": "label",
    "text": "Submit",
    "action": { SOME_ACTION } 
  }]
}

如下不接受点击。

{
  "items": [{
    "type": "vertical",
    "components": [{
      "type": "label",
      "text": "touch me",
      "action": { ... } 
    }]
  }]
}

在您的示例中,标签是在图层内部定义的。因此它不接受点击。

基本上你有两个选择。

  1. 在 JasonLabelComponent.m 中实现一个点击处理程序,因此无论它们的位置标签如何,如果它是在 JSON 中提供的,则始终响应操作。
  2. 取出标签并使其成为按钮,默认情况下会启用操作。

推荐阅读