我正在将数据解析为表视图,但服务器页面中有大量的名称。
首先,我在服务器端的不同页面中写了所有服务器数据,然后在表视图下面放了一个“查看更多”按钮。当用户单击该页面时,页面编号将增加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 *type=@"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 *type=@"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 :(得分: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]];
}