2012-07-04 32 views
0

我使用鈦工作室建立一個iOS應用程序。 我有一個webservice發給我:(鈦工作室)與排序的數據顯示桌面

data:[{「date」:「2012-07-04」...},{「date」:「2012-06-04」...}, { 「日期」: 「2012-05-04」 ...} ...]

我想排序數據按日期前添加/顯示他們這樣的實現代碼如下:

- ------------------------------------------

第1行: 2012-O7-04

--- -----------------------------------------

row 2:2012 -O7-01

----------------------------------------- ---

行3:2012-O4-04

----------------------------- ---------------

row 4:2012-O1-07

--------------------------------------------

第5行:2011-12-31 with 4 children

------------------------------- -------------

,當我在第5行點擊它會顯示他的孩子:

------------- --------------------

孩子1:2011-12-31

---------------------------------

孩子2:2011-12-31

---------------------------------

孩子3:2011-12-31

-------------------------------- -

孩子4:2011-12-31

-------------------------------- -

我該怎麼辦?

感謝

回答

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