ListView {
// ...
function find(convId)
{
// count is a property of ListView that returns the number of elements
if (count > 0)
{
for (var i = 0; i < count; ++i)
{
// `model` is a property of ListView too
// it must have an at() metghod (or similar)
if (model.at(i)["id_"] === convId)
{
return i;
}
}
}
}
// ...
}
2 回答
虽然Simon的答案是最佳实践,但为了回答被问到的实际问题,您需要迭代
ListView
的contentItem
,如下所示:然后,您可以使用objectName或委托Item的任何其他属性进行过滤 .
你确定要迭代代表吗?在大多数情况下,您希望迭代模型,因为在
ListView
的情况下,即使您的模型有100个条目,也可能只有少数委托 . 这是因为当委托移出可见区域时会重新填充委托 .您需要一个具有类似函数的模型,例如
at()
,它返回给定位置的模型元素 . 比你可以做的事情