codenameone - 底部带有缩略图的轮播
问题描述
在 Codenameone 应用程序中,我正在尝试开发一个底部带有缩略图列表的轮播。我使用 Tabs 控件在表单中心以轮播样式显示文件(图像、视频、文本、按钮等差异类型),并使用另一个 Tabs 控件在底部显示缩略图(第一个轮播文件)的形式。当用户在底部轮播中选择缩略图时,相应的组件应显示在第一个轮播中。
hi.add(BorderLayout.CENTER, mainCarousel);
hi.add(BorderLayout.SOUTH, bottom_tab);
bottom_tab.addSelectionListener((i1, i2) -> {
// bottom_tab.getTabComponentAt(i2).addPointerPressedListener((i) -> {
mainCarousel.getTabComponentAt(i2).setVisible(true);
mainCarousel.getTabComponentAt(i2).repaint();
// });
});
但是该组件没有显示在中央轮播中。此外,我尝试捕获事件 addPointerPressedListener,但是当我选择缩略图图像时它没有被触发。
解决方案
您不能将选项卡组件设置为可见/不可见以显示/隐藏它们。那是行不通的。我猜您想要的是底部 UI 的水平列表,类似于此处的答案。
我建议使用总是释放的指针。请注意,这只会传递给可聚焦的组件或表单。为了确保您获得事件,您可以在表单上注册一个指针释放侦听器。
推荐阅读
- android - 如何取消在调试期间安装的应用程序
- python - Conda 仅在基础环境中安装软件包
- c - 为什么需要转换字符?
- direct2d - 如何访问 Direct2D 硬件 RenderTarget 的位图数据?
- python - python中.sort()方法的意外输出
- scala - 在对象构造之前更新构造函数参数
- javascript - 使用 Nightmare Cloud 功能进行 Web 抓取可以在本地工作,但在部署时不能
- javascript - 为什么无论我点击哪个段落,我都会得到相同的输出?
- python - Telepot 中的样式内联键盘
- python-3.x - Python 对象超出递归深度