我正在创建一个使用 Google Books API 的应用程序。因此,每当我搜索一本书时,它都会给出一个 JSON 响应,然后我将这些结果加载到我的 TableView 中。我搜索时会有数千本书的结果。但我不想在我的表格 View 中加载所有内容。每当我向下滚动时,它只需要加载下一本书。
任何人都可以给我一个代码或粗略的想法,说明如何在 Android 中使用 Titanium 执行此操作吗?我查过这个帖子:https://github.com/appcelerator/KitchenSink/blob/master/Resources/examples/table_view_dynamic_scroll.js但这是用于 iPhone 的,我也需要它用于 Android。帮帮我……
最佳答案
环顾四周后,我为 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.__pageSize
、e.source.__doneUpdating
和 e.source.__updating
是内部变量,由将行插入 tableView 的代码。
关于android - 在 Titanium for Android 中动态加载 TableView 内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9076909/