请帮忙。如何在iOS上获得第一个可见项目位置?
对于Android,我有这个代码,它可以
restListing.android.getFirstVisiblePosition()
NativeScript的ListView在iOS中使用UITableView。也许这样的东西对你的情况有用:
var list = <ListView>page.getViewById("list");
var visibleCells = list.ios.visibleCells;
console.log(visibleCells);
console.log(visibleCells[0]); // first visible cell
在Nick的Answer上扩展,下面的代码将返回与android对应代码相同的类型。
/**
* Get first visible item from a ListView instance.
*
* @returns first visible item (platform agnostic).
* @param listView {N} ListView instance.
*/
function firstVisibleItemIndexFromListView(listView: ListView): number {
if (isAndroid) return listView.android.getFirstVisiblePosition();
// Feel free to remove the UITableView casting, it works either way.
// This just allows for type-checking and type-hinting!
const tableView = listView.ios as UITableView;
const visibleIndexes = tableView.indexPathsForVisibleRows;
return visibleIndexes[0].row;
}
我希望这能帮助新的NativeScript开发人员!