使用子项数据显示数据(TableView,ListView或ScrollView)

时间:2016-12-16 13:17:36

标签: android ios uitableview listview appcelerator

为了为Titanium(Appcelerator)创建Alloy Calendar模块,我做了一些尝试,这些是最快更好的。

问题是,如果用户滚动到最后,日历以30个默认日(主要项目)开始,在某些时候,加载了7天(主要项目),在某些时候,如果用户仍在推动更多的结果,总共说730行(2年),这很多。

问题

  • 有什么方法可以在TableViewRow或ListItem上使用子项目(比如ExpandableListView)?

  • 您认为这种方法中的一种是最好的吗?

  • 如果您选择以下方法之一,是否有任何要添加或更改的内容?

1# - ScrollView

使用水平布局,每次用户滚动到ScrollView的开头或结尾时都有30个内部ScrollView,更多10个ScrollView被添加/插入到ScrollView(取决于滚动位置)。这种方法性能很差;

2# - TableView (旋转-90º)

使用30个TableViewRows(旋转-90),每次用户滚动到TableView的开头或结尾时,数据会再次设置,但现在使用新的10个TableViewRows;

使用ListView

3# - ListView (旋转-90º)

这是一个主要的ListView(合金),每个项目都有它自己的ListView(常见的js)在控制器中添加到主ListView时创建一个新的ListItem,这是我的小部件的最佳版本,但有2个关于这个的问题:每当主ListView到达ListView的结尾或开头时,所有内部ListView似乎都会切换内容,几乎不可能获得所选元素或数据。

4# - ListView (旋转-90º)

与上面相同,但是使用内部TableViews,我无法选择单击的行,因为数据是作为TableView bindId的data属性添加的,所以为了创建一个解决方案,我'我试图为每个项添加一些默认行,但是,在构建应用程序时,它在编译时崩溃,我被迫将TableView更改为具有30个默认内部项的垂直ScrollView,并设置一个数组物品子项的每个项目的标签。

最后的想法

所有这些方法都有自己的优点和缺点,但只有2个没有错误的方法是那些不包含ListView的方法。具有ListView的那些是最快的。

我没有尝试的那个,它是一个ScrollView或TableView,内部数据显示在ListView中,但我认为这不会有助于提高性能。

结果

enter image description here

0 个答案:

没有答案