微软乐队元素限制

microsoft band element limitation

我想知道是否有办法在页面上获得更多原始元素(按钮)。因为只有两个控件(按钮和文本块)可以使用(没有列表框等)并且我的应用程序可以使用多个项目 select,所以我不知何故陷入了我想做的事情。最后,用户应该可以从不同项目的列表中选择 select。

到目前为止,我为每个有效的项目添加了按钮,但它是有限的。添加大约 15 个按钮后,只有 14 个按钮,其中一个没有内容。 我开始为我的类别向 PageLayout(水平方向)添加一个 ScrollFlowPanel。然后为我的项目添加三个 ScrollFlowPanel 到第一个 ScrollFlowPanel(垂直方向)。每个子 ScrollFlowPanel 都可以有一个文本块(类别名称)和多个按钮。向每个类别添加两个按钮不是问题。但是随着按钮的增多,问题出现了。

我的第二次尝试只是使用一个带有更多按钮的类别。但是在 12 个按钮之后,同样的问题又回来了。我知道每个图块都有一个控制限制。或者我可以添加第二个图块(如果可能的话在 Band 上)。但我不太喜欢这个主意。

还有其他建议吗?

(真不敢相信乐队如此有限)

根据 Band SDK overview 文档:

Note: The total number of elements (primitive and container) that a layout may contain is limited to about 20. The exact number will vary depending on the type of elements in the layout.

如果您在每页 15 个按钮时达到顶峰,我猜 ButtonTextBlock 需要更多的资源,需要更多的绘图、事件处理等。

您是否考虑过像 Band 的设置页面那样做,而不是在页面上添加大量按钮?

看看 "Brightness" 设置 Button,当点击它时,会将您带到一个包含 TextBlock 元素列表的页面。当用户滚动浏览然后选择 TextBlock(例如 'Auto')时,他们将返回到上一页并且设置的文本 Button 会更改以反映他们的选择。

也许页面的分层组织是可行的方法,允许您将每页的最大控件数减少到不超过 12-15 个左右?

注意:根据Sparkfun's Band teardown, the Band's CPU is a Freescale Kinetis K24 32-bit ARM Cortex-M4 a very low-end processor in Freescale's Kinesis range。 K24 只有 256KB 板载 RAM(+2MB 外部 RAM)和一个 120MHz 处理器内核,必须管理、同步和协调 15 个以上的传感器、USB、蓝牙、屏幕、触摸传感器、按钮等,持续约 18 小时一次充电。