android一个block大小,Blockly4Android 开发指南(3)添加自定义块

申明

本指南翻译自 BLockly 官方文档。

Blockly 中的块由三部分组成:块定义对象:定义块的外观和行为,包括文本,颜色,作用域和连接。

工具箱引用:工具箱 XML 文件中每种类型的块的引用,因此用户可以将其添加到工作区。

发生器函数:生成此块的代码字符串。它总是用 JavaScript 编写,即使目标语言不是 JavaScript。

虽然 Blockly 的 Web 版本还支持使用 JavaScript 以代码的方式来构建块定义对象,但 Android 版 的 Blockly 不支持这个功能。

块定义

构建一个新块的定义最简单的方式是使用「BLockly 开发者工具」。由于 Android 版的 Blockly 仅支持 JSON 格式的块定义,因此将工厂的「语言代码」设置为 JSON。有关此格式的详细信息,请点击「此处」。

当使用 AbstractBlocklyActivity 时, getBlockDefinitionsJsonPaths()方法返回应用程序 assets 目录下的资源文件路径列表,向系统提供块定义文件。块定义可以通过调用 reloadBlockDefinitions()来重新加载。

当使用原始的 BlocklyController 时,通过多个 BlocklyController.addBlockDefinitions(..)方法之一添加块定义。

可以加载多个 .json 文件,但应该确保块的类型 ID 是唯一的。

添加工具箱引用

让系统知道你添加了新的块并不够,你还需要让用户知道这一点。工具箱就让用户知道他们能用哪些块。 Android 版的 BLockly 使用和 Web 版相同形式的 XML 文件来定义工具箱,详情请参阅「此处」。

AbstractBlocklyActivity 使用 getToolboxContentsXmlPath()返回的 .xml 资源文件的内容填充工具箱,reloadToolbox()将重新加载工具箱(再次调用 getToolboxContentsXmlPath())。

你也可以调用任何 BlocklyController.setToolboxConfiguration(..) 的方法。

通常来说,大多数块应该包含在工具箱中,但是有一些可以被忽略。这可以用于支持不推荐使用的块,教导个别概念,或隐藏当前无法使用的块。有关详细信息,请参阅「填充工具箱」。

添加生成器函数

最后,为了将块转化为代码,将一种类型的块与一个JavaScript生成器函数进行配对。

请在「使用自定义生成器」中查看更多相关内容。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值