2012-05-02 56 views
0

在我的應用程序中使用帶有4個按鈕的scrollView。 當我們點擊任何一個按鈕時,一個表格將被動態地逐行顯示數據。在tableViewCell中按升序排列值

現在我的問題是將它們按升序排列。

示例代碼是

這是用於將按鈕滾動型,這是在一類

 browseScrollView.hidden = NO; 
    browseScrollView.frame = CGRectMake(15, 57, 480, 44); 
    [browseScrollView setContentSize:CGSizeMake(600, 40)];   
    firstButton = [UIButton buttonWithType:UIButtonTypeCustom]; 
    [firstButton setFrame:CGRectMake(5,3,91,37)]; 
    [firstButton setImage:[UIImage imageNamed:@"genres.png"] forState:UIControlStateNormal]; 
    firstButton.tag = 1; 
    [firstButton addTarget:self action:@selector(fourthPageSongSelction:) forControlEvents:UIControlEventTouchDown]; 
    [browseScrollView addSubview:firstButton]; 

    secondButton = [UIButton buttonWithType:UIButtonTypeCustom]; 
    [secondButton setFrame:CGRectMake(110,3,91,37)]; 
    [secondButton setImage:[UIImage imageNamed:@"artists.png"] forState:UIControlStateNormal]; 
    secondButton.tag = 2; 
    [secondButton addTarget:self action:@selector(fourthPageSongSelction:) forControlEvents:UIControlEventTouchDown]; 
    [browseScrollView addSubview:secondButton]; 

    thirdButton = [UIButton buttonWithType:UIButtonTypeCustom]; 
    [thirdButton setFrame:CGRectMake(209,3,91,37)]; 
    thirdButton.tag = 3; 
    [thirdButton setImage:[UIImage imageNamed:@"albums.png"] forState:UIControlStateNormal]; 
    [thirdButton addTarget:self action:@selector(fourthPageSongSelction:) forControlEvents:UIControlEventTouchDown]; 
    [browseScrollView addSubview:thirdButton]; 


    fourthButton = [UIButton buttonWithType:UIButtonTypeCustom]; 
    [fourthButton setFrame:CGRectMake(317,3,91,37)]; 
    fourthButton.tag = 4; 
    [fourthButton setImage:[UIImage imageNamed:@"songs.png"] forState:UIControlStateNormal]; 
    [fourthButton addTarget:self action:@selector(fourthPageSongSelction:) forControlEvents:UIControlEventTouchDown]; 
    [browseScrollView addSubview:fourthButton]; 

    tableView.hidden = NO; 
    tableView.frame = CGRectMake(5, 100, 235, 200); 
    tableView.showsVerticalScrollIndicator = NO; 

這是我用於將值在另一個類,這是子類添加到錶行此方法TableViewCell

-(void) showFourthPageControlValues :(int) currRow :(int)val 
{ 
int value = val; 
TonifyAppDelegate *appDelegate = (TonifyAppDelegate *)[UIApplication sharedApplication].delegate; 

if (value == 1) 
{ 
    genresLabel1.hidden = NO; 
    genresLabel2.hidden = NO; 

    genresButton.hidden = NO; 

    artistLabel1.hidden = YES; 
    artistLabel2.hidden = YES; 
    artistButton.hidden = YES; 

    albumLabel1.hidden = YES; 
    albumLabel2.hidden = YES; 
    albumButton.hidden = YES; 

    songsLabel1.hidden = YES; 
    songsLabel2.hidden = YES; 
    songsButton.hidden = YES; 

    [genresLabel1 setText:[[appDelegate.songsList objectAtIndex:currRow] valueForKey:@"Genre"]]; 
    [genresLabel2 setText:[[appDelegate.songsList objectAtIndex:currRow] valueForKey:@"SongName"]]; 
    [genresButton addTarget:self.delegateController action:@selector(songTypeSelAction:) forControlEvents:UIControlEventTouchUpInside]; 
    genresButton.tag = currRow; 
} 

if (value == 2) 
{ 
    genresLabel1.hidden = YES; 
    genresLabel2.hidden = YES; 
    genresButton.hidden = YES; 

    artistLabel1.hidden = NO; 
    artistLabel2.hidden = NO; 
    artistButton.hidden = NO; 

    albumLabel1.hidden = YES; 
    albumLabel2.hidden = YES; 
    albumButton.hidden = YES; 

    songsLabel1.hidden = YES; 
    songsLabel2.hidden = YES; 
    songsButton.hidden = YES; 

    [artistLabel1 setText:[[appDelegate.songsList objectAtIndex:currRow] valueForKey:@"ArtistName"]]; 
    [artistLabel2 setText:[[appDelegate.songsList objectAtIndex:currRow] valueForKey:@"SongName"]]; 

    [artistButton addTarget:self.delegateController action:@selector(songTypeSelAction:) forControlEvents:UIControlEventTouchUpInside]; 
    artistButton.tag = currRow; 
} 
if (value == 3) 
{ 
    genresLabel1.hidden = YES; 
    genresLabel2.hidden = YES; 
    genresButton.hidden = YES; 

    artistLabel1.hidden = YES; 
    artistLabel2.hidden = YES; 
    artistButton.hidden = YES; 

    albumLabel1.hidden = NO; 
    albumLabel2.hidden = NO; 
    albumButton.hidden = NO; 

    songsLabel1.hidden = YES; 
    songsLabel2.hidden = YES; 
    songsButton.hidden = YES; 

    [albumLabel1 setText:[[appDelegate.songsList objectAtIndex:currRow] valueForKey:@"AlbumName"]]; 
    [albumLabel2 setText:[[appDelegate.songsList objectAtIndex:currRow] valueForKey:@"SongName"]]; 

    [albumButton addTarget:self.delegateController action:@selector(songTypeSelAction:) forControlEvents:UIControlEventTouchUpInside]; 
    albumButton.tag = currRow; 
} 
if (value == 4) 
{ 
    genresLabel1.hidden = YES; 
    genresLabel2.hidden = YES; 
    genresButton.hidden = YES; 

    artistLabel1.hidden = YES; 
    artistLabel2.hidden = YES; 
    artistButton.hidden = YES; 

    albumLabel1.hidden = NO; 
    albumLabel2.hidden = NO; 
    albumButton.hidden = NO; 

    songsLabel1.hidden = NO; 
    songsLabel2.hidden = NO; 
    songsButton.hidden = NO; 

    [songsLabel1 setText:[[appDelegate.songsList objectAtIndex:currRow] valueForKey:@"SongName"]]; 
    [songsLabel2 setText:[[appDelegate.songsList objectAtIndex:currRow] valueForKey:@"AlbumName"]]; 
    [songsButton addTarget:self.delegateController action:@selector(songTypeSelAction:) forControlEvents:UIControlEventTouchUpInside]; 
    songsButton.tag = currRow; 
} 

}

這是甲基OD我使用供選擇或行

-(void) songTypeSelAction :(id) sender 
{ 
NSLog(@"songTypeSelAction"); 
UIButton *btn = (UIButton *) sender; 
NSLog(@"songTypeSelAction bttn.tag: %d", btn.tag); 
if ([self.delegateController respondsToSelector:@selector(songImageSelAction:)]) 
{ 

} 
} 
+0

清除你的問題proparely –

+0

實際上是動態地向tableViewCell(row)添加值,現在我想排序並將該值添加到tableViewCell(row)。 –

+0

爲此,您必須對數組進行排序(數據源) – Mangesh

回答

2
NSSortDescriptor *sortDescriptor1 = [[NSSortDescriptor alloc] initWithKey:@"SongName" ascending:TRUE]; 
NSSortDescriptor *sortDescriptor2 = [[NSSortDescriptor alloc] initWithKey:@"AlbumName" ascending:TRUE]; 
[appDelegate.songsList sortUsingDescriptors:[NSArray arrayWithObjects:sortDescriptor1,sortDescriptor2, nil]]; 
+0

它的工作,謝謝Kuldeep –

0

如果你想TI preferable..Than你可以做this..First採取新的看法....添加四個按鈕和的tableView。

比遵循此:編輯 - >嵌入在 - >滾動型

比對按鈕的點擊事件,在該表中,不要忘了在放映時間重新加載tableview中的數據。

如果有任何查詢問我。