0

私は、iosアプリの構築にtitanium studioを使用しています。私は私を送るWebサービスを持っています:

data:[{"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

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

子 2 : 2011-12-31

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

子 3 : 2011-12-31

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

子 4 : 2011-12-31

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

どうすればできますか?

ありがとう

4

1 に答える 1

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 );

より詳細な解決策については、このリンクを確認してください: Titanium Studio で TableView 行を日付で並べ替える

于 2012-07-04T18:56:33.750 に答える