1

我正在创建一个使用 Google Books API 的应用程序。因此,每当我搜索一本书时,它都会给出 JSON 响应,然后我将这些结果加载到我的表格视图中。当我搜索时,会有数千本书的结果。但我不想在我的表格视图中加载所有内容。每当我向下滚动时,它只需要加载下一本书。

谁能给我一个关于如何使用 Titanium 在 Android 中执行此操作的代码或粗略的想法?我已经检查了这篇文章:https ://github.com/appcelerator/KitchenSink/blob/master/Resources/examples/table_view_dynamic_scroll.js但这是用于 iPhone,我也需要它用于 Android。帮帮我...

4

1 回答 1

3

环顾四周后,我为android实现了以下解决方案:

tableView.addEventListener('scroll', 
    function(e) {
        if (!e.source.__doneUpdating && e.totalItemCount % e.source.__pageSize === 0) {
            var distance = e.totalItemCount - e.firstVisibleItem;
            if (distance <= e.visibleItemCount) {
                if (!e.source.__updating) {
                    e.source.__updating = true;
                    e.source.fireEvent('beginUpdate', e);
                }
            }
        }
        Ti.API.info('-------------------');
        Ti.API.info( 'e.firstVisibleItem: ' + e.firstVisibleItem);
        Ti.API.info( 'e.totalItemCount: ' + e.totalItemCount);
        Ti.API.info( 'e.visibleItemCount: '+ e.visibleItemCount);
    }
);

其中e.source.__pageSizee.source.__doneUpdatinge.source.__updating是由将行插入 tableView 的代码维护的内部变量。

于 2012-09-13T11:25:53.747 回答