2012-11-05 26 views
0

我正在解析數據到一個表視圖,但在服務器頁面中有多個名稱。在UITableView中添加以前的數據

首先,我在服務器端的不同頁面中編寫了所有服務器數據,並在表格視圖下放置了一個「查看更多」按鈕。當用戶點擊時,頁碼將增加1,第二頁上的數據將顯示在表格視圖中。問題是我在表格視圖中丟失了第一頁的數據。當我點擊「查看更多」時,如何將新數據附加到以前的數據?

這是viewDidLoad

- (void)viewDidLoad 
{ 
    [super viewDidLoad]; 

    sharedClass=[SharedClass sharedInstance]; 
    [self.navigationController setNavigationBarHidden:YES]; 

    Noresult.hidden = YES; 
    NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; 
    // NSString *userid = [defaults objectForKey:@"userid"]; 
    NSString *userid = @"3"; 

    NSString *search_key = @""; 
    NSString *[email protected]"user"; 

    page = 1; 

    ServerRequests *ser_req = [[ServerRequests alloc] init]; 
    ser_req.server_req_proces = self; 
    NSString *postdata = [[NSString alloc] initWithFormat:@"{\"function\":\"search\", \"parameters\": {\"user_id\": \"%@\",\"search_key\": \"%@\",\"type\": \"%@\",\"page\": \"%d\"},\"token\":\"\"}",userid,search_key,type,page]; 

    [ser_req sendServerRequests:postdata]; 

    NSLog(@"array=========>>%@",postdata); 
    sharedClass.oprtn = @"load table"; 

} 

而這裏面的代碼viewMore按鈕

-(IBAction)Viewmore:(id)sender 
{ 


    NSString *userid = @"3"; 

    NSString *search_key = searchBaar.text; 
    NSString *[email protected]"user"; 

    page = page + 1 ; 



    ServerRequests *ser_req = [[ServerRequests alloc] init]; 
    ser_req.server_req_proces = self; 
    NSString *postdata = [[NSString alloc] initWithFormat:@"{\"function\":\"search\", \"parameters\": {\"user_id\": \"%@\",\"search_key\": \"%@\",\"type\": \"%@\",\"page\": \"%d\"},\"token\":\"\"}",userid,search_key,type,page]; 

    [ser_req sendServerRequests:postdata]; 

    sharedClass.oprtn = @"load table"; 

} 
+0

你在哪裏保存這些DATAS? –

+0

@Midhun MP保存到服務器,將這些數據發佈到該服務器 –

+0

我的意思是在應用程序中,您要在哪裏保存數據,以及從何處將數據加載到tableView(通常是'NSArray'或'NSMutableArray') –

回答

0

您使用的是NSMutableArray保持數據。 當你按下查看更多按鈕,可能存儲數據,如:

yourDataArray = //getting data from server; 

我會建議不要刪除重新分配相同NSMutableArray

而是使用一個臨時數組,並從臨時數組的新數據添加到dataArray,如:

NSMutableArray *tempArray = //getting data from server; 

for(int loop = 0; loop < [tempArray count]; loop++) 
{ 
    [yourDataArray addObject:[tempArray objectAtIndex:loop]]; 
} 
+0

同時按下視圖更 - (IBAction爲)moreResults:(ID)發送方 { 頁=頁面+ 1; ServerRequests * ser_req = [[ServerRequests alloc] init]; ser_req.server_req_proces = self; NSString * postdata = [[NSString alloc] initWithFormat:@「{\」function \「:\」search \「,\」parameters \「:{\」user_id \「:\」%@ \「,\」search_key \「:\」%@ \「,\」type \「:\」%@ \「,\」page \「:\」%d \「},\」token \「:\」\「}」用戶ID,搜索鍵值,類型,頁面]; [ser_req sendServerRequests:postdata]; sharedClass.oprtn = @「load table」; } –

+0

@ Midhun MP ...嘿midhun我只是想顯示在前面的頁面上的數據都是, 意味着在按鈕上點擊它將是int page1 = page + 1; 我也希望使它成爲page2 = page; –

+0

@NithinMK:1)你需要使用NSMutableArray而不是NSArray 2)請顯示數據添加代碼 –

相關問題