我有桌面视图。因为我正在显示一个数组。当我滚动tableview时它不会移动到最后一个表格单元格的底部。我应该怎么做。
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
return 1;}
-(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
return tableResourceArray.count;}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
NSString *cellIdentifier=[NSString stringWithFormat:@"CustomCell:%d",indexPath.row];
customcell *cell = (customcell *)[tableView dequeueReusableCellWithIdentifier:cellIdentifier];
if (cell == nil) {
cell = [[customcell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:cellIdentifier];
}
if(tableView==table) {
table.backgroundColor = [UIColor clearColor];
table.separatorColor=[UIColor clearColor];
NSDictionary *slug = [category objectAtIndex:indexPath.row];
NSLog(@"gggg:%@",slug);
cell.ctitle.text = [NSString stringWithFormat:@"%@", [slug objectForKey:@"title"]];
cell.ctitle.font=[UIFont fontWithName:@"Arial" size:12];
cell.cdate.text = [NSString stringWithFormat:@"Date:%@", [slug objectForKey:@"date"]];
cell.cdate.textColor=[UIColor colorWithRed:0.820 green:0.776 blue:0.526 alpha:1.000];
cell.ccontent.text = [NSString stringWithFormat:@"%@", [slug objectForKey:@"content"]];
}
答案 0 :(得分:0)
解决方案1:
您已将标识符声明为非静态变量。这可能会导致滚动问题。
NSString *cellIdentifier=[NSString stringWithFormat:@"CustomCell:%d",indexPath.row];
而是使用以下:
NSString *cellIdentifier= @"CustomCellIdentifier";
静态变量仅用于构造一次,并且无论何时调用“CellForRowAtIndexPath”方法,它都会一直避免内存创建。如果使用非静态变量,则会创建大量可能导致滚动问题的内存。
解决方案2: //不确定。但可能会有所帮助
在使用前分配字典。
NSDictionary *slug = [[NSDictionary alloc] init];
slug = [category objectAtIndex:indexPath.row];
答案 1 :(得分:0)
我通过更改表格视图框架来解决问题。
答案 2 :(得分:0)
假设您的屏幕尺寸为320x480,由于您的桌面视图的框架(原点130 +高度480),表格视图框架的底部部分超出了屏幕130。如果你在屏幕底部有更多的子视图来覆盖tableview,那就更好了。更改表格视图框,以便表格视图的底部结束于屏幕底部。