如何在 Android 中创建类似于“选项卡布局”的圆形数组?

Posted

技术标签:

【中文标题】如何在 Android 中创建类似于“选项卡布局”的圆形数组?【英文标题】:How do I create a circular array like `Tab Layout` in Android? 【发布时间】:2020-10-29 05:51:41 【问题描述】:

我正在尝试创建一个像 TabLayout 这样的圆形数组,其中有 5 个选项卡。

目前,我可以去 A B C D E。 我希望它是无限的,在 E 之后,A 应该再次出现,例如 ...A B C D E A B C D E ....

我该如何创建或找到解决方法?

【问题讨论】:

【参考方案1】:

一个圆形数组代表一个队列或先进先出结构,它允许头部四处追逐以满足背部。请参阅***图表以获得更好的实现。

数组索引环绕形成一个圆圈。下一个槽索引由 mod(%) 运算符计算,

nextIndex := (lastIndex + 1) MOD arrayLength 其中两个都是整数

见Circular buffer - Wikipedia 还有this

【讨论】:

是的,我知道循环数组的工作原理。有没有办法在 TabLayout 中复制它?【参考方案2】:

如果您想使用库 here is one .. 它使用 RecyclerView 实现 TabLayout 行为

【讨论】:

以上是关于如何在 Android 中创建类似于“选项卡布局”的圆形数组?的主要内容,如果未能解决你的问题,请参考以下文章

我们如何在android中使用firebase Realtime数据库动态设置选项卡布局的选项卡标题?

如何将控件添加到 Android 中的选项卡布局?

滑动选项卡布局错误

如何更改选项卡布局中所选选项卡的形状?

带有滑动视图的选项卡布局

Android在图像按钮和其他中将普通布局更改为选项卡布局错误?