当我尝试在UITableview
中显示泰米尔字符时,我无法顺利滚动tableview
,但如果我用英文字符替换泰米尔字符,则滚动没有问题。
任何解决方案?
提前致谢!!!
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
static NSString *CellIdentifier = @"Cell";
UITableViewCell *cell = (UITableViewCell *)[tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if(cell == nil)
{
cell = [[[UITableViewCell alloc] initWithFrame:CGRectZero reuseIdentifier:CellIdentifier] autorelease];
cell.selectionStyle = UITableViewCellSelectionStyleNone;
cell.backgroundColor=[UIColor yellowColor];
UILabel *lblTitle = [[UILabel alloc]init];
[lblTitle setTag:100];
[lblTitle setBackgroundColor:[UIColor clearColor]];
[lblTitle setFont:[UIFont fontWithName:@"Helvetica" size:13]];
[lblTitle setFont:[UIFont boldSystemFontOfSize:14]];
[lblTitle setTextColor:[UIColor blackColor]];
[cell.contentView addSubview:lblTitle];
[lblTitle release];
}
UILabel *plblTitle = (UILabel*) [cell.contentView viewWithTag:100];
News *pNewsObj = [appDelegate.CurrentNewsArray objectAtIndex:indexPath.row];
plblTitle.text = pNewsObj.pHeadLine;
return cell;
}
答案 0 :(得分:2)
您可以使用滚动视图,标签和按钮创建自定义表格视图。
它的滚动非常流畅。
对于前。
In myView.h
IBOutlet UIScrollView *scrollView;
UIButton *cell[2048];
NSInteger cellCount;
- (void) createCell;
- (void) removeCell;
In myView.m
- (void) createCell
{
[self removeCell];
float x = 10.0;
float y = 5.0;
for (int i = 0; i < [Your NSMutableArray count]; i++)
{
cell[cellCount] = [UIButton buttonWithType:UIButtonTypeCustom];
cell[cellCount].frame = CGRectMake(x, y, 176.0, 10.0);
[cell[cellCount] setTitle:@"Text" forState:UIControlStateNormal];
[cell[cellCount] setTitleColor:[UIColor redColor] forState:UIControlStateNormal];
cell[cellCount].titleLabel.font = [UIFont fontWithName:@"Arial" size:14.0];
[cell[cellCount] addTarget:self action:@selector(cellEvent:) forControlEvents:UIControlEventTouchUpInside];
cell[cellCount].tag = i;
[scrollView cell[cellCount]];
cellCount++;
y = y + 15.0;
}
scrollView.contentSize = CGSizeMake(scrollView.frame.size.width, y);
}
- (void) removeCell
{
for (int i = 0; i < cellCount; i++)
{
[cell[i] removeFromSuperview];
}
cellCount = 0;
}