列表控件
如何添加列表控件
请参考如何添加控件
如何自定义列表内容
每个列表控件可以根据需要添加多个列表子项,可以分别修改它们的属性来自定义样式。下图是一个简单的通讯录列表:
示例中的纵向列表,每个列表项包括两个列表子项,分别用来展示电话图标和名称。
编译后,主要生成以下方法:
- GetListItemCount(LTScrollList *pControl) :回调获取用户列表项数量。例如显示10条数据,返回值就填10
- BuildListItemData(LTScrollList pControl, LTListItem pListItem, INT iIndex):回调构建列表项数据,数据数量要与总数匹配,避免数据溢出
- ListItemClick(LTListItem *pControl, INT iIndex, BOOL bLongClick):点击列表中的某一项时,系统会调用该函数,参数iIndex表示当前点击列表项的索引值,从0开始。
接下来通过示例来展示如何构建列表项:
首先确定列表项数量。以返回值为6为例
INT ListCtrl::List1_GetListItemCount(LTScrollList *pControl) { CLog::LogU("[%s:%s] Name:%s \n",__FILE__,__FUNCTION__,pControl->GetName().c_str()); return 6; }
回调构建列表项数据
STRING gListlitemData[] = {"Data0", "Data1", "Data2", "Data3", "Data4", "Data5"}; INT ListCtrl::List1_BuildListItemData(LTScrollList *pControl, LTListItem *pListItem, INT iIndex) { CLog::LogU("[%s:%s] Name:%s \n",__FILE__,__FUNCTION__,pControl->GetName().c_str()); pListItem->SetText(gListlitemData[iIndex]); }
运行结果如下: