我使用钛工作室构建ios应用程序。 我有一个网络服务发送给我:
数据:[{“date”:“2012-07-04”...},{“date”:“2012-06-04”...},{“date”:“2012-05- 04“...} ...]
我希望按照日期对数据进行排序,然后使用这样的表格视图添加/显示它们:
--------------------------------------------
第1行:2012-O7-04
--------------------------------------------
第2行:2012-O7-01
--------------------------------------------
第3行:2012-O4-04
--------------------------------------------
第4行:2012-O1-07
--------------------------------------------
第5行:2011-12-31有4个孩子
--------------------------------------------
当我点击第5行时,它会显示他的孩子:
---------------------------------
孩子1:2011-12-31
---------------------------------
child 2:2011-12-31
---------------------------------
孩子3:2011-12-31---------------------------------
child 4:2011-12-31
---------------------------------
我该怎么做?
感谢
答案 0 :(得分:0)
您可以使用此功能对数组进行排序,
var feedArray = [
{title: 'Feed 1', desc: 'Desc 1', date: '2012-04-10'},
{title: 'Feed 2', desc: 'Desc 2', date: '2012-04-12'},
{title: 'Feed 3', desc: 'Desc 3', date: '2012-03-18'}
];
function findFeedByDate(d) {
for(var i = 0; i < feedArray.length; i++) {
if ( d == feedArray[i].date ) {
return feedArray[i];
}
}
}
// Grab date from feed, push it to array, then use Array.sort() to sort array
var dateArray = [];
for(var i = 0; i < feedArray.length; i++) {
dateArray.push(feedArray[i].date);
}
dateArray = dateArray.sort();
Ti.API.info( dateArray );
var sortedFeedArray = [];
var date = null;
// for(var i = 0; i < dateArray.length; i++) { // ASC Sorting
for(var i = dateArray.length - 1; i >= 0 ; i--) { // DESC Sorting
sortedFeedArray.push(
findFeedByDate( dateArray[i] )
);
}
Ti.API.info( sortedFeedArray );
有关更详细的解决方案,请点击此链接:Sort TableView Row by date in Titanium Studio