我有一個UITableView
約100排。爲什麼在滾動時UITableView單元重疊?
每個單元格都檢查了圖像,但當我們滾動UITableView
時,所有單元格在未檢查的單元格中重疊。
(UITableViewCell *)tableView:(UITableView *)tableView
cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *MyIdentifier = @"Cell";
static NSString *MyIdentifierAds = @"Cell1";
UITableViewCell *cell ;
if (tableView==self.tblSeachMarketplace) {
if (indexPath.section==0) {
cell = [tableView dequeueReusableCellWithIdentifier:MyIdentifier];
// if(cell== nil)
// {
// cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:MyIdentifier];
// }
UILabel* lblTitle = (UILabel *)[cell viewWithTag:200];
UILabel*lblSubheading = (UILabel *)[cell viewWithTag:300];
UIImageView* imgRating = (UIImageView *)[cell viewWithTag:400];
UIImageView* imgLogo = (UIImageView *)[cell viewWithTag:100];
[lblTitle setFont:[UIFont fontWithName:@"Lato-Bold" size:12.5f]];
[lblSubheading setFont:[UIFont fontWithName:@"Lato-Bold" size:9.0f]];
[lblTitle setFont:[UIFont fontWithName:@"Lato-Bold" size:12.5f]];
[lblSubheading setFont:[UIFont fontWithName:@"Lato-Bold" size:9.0f]];
[lblTitle setTextColor:[Global colorFromHexString:@"#4394d4"]];
NSDictionary*row=[[NSDictionary alloc]init];
cell.contentView.backgroundColor = [UIColor whiteColor];
if (allMarketPlaceNewsletters.count>0) {
row=[allMarketPlaceNewsletters objectAtIndex:indexPath.row];
NSString *imgUrl=[row valueForKey:@"logo"];
if (imgUrl != (id)[NSNull null]) {
NSURL *urlTemp = [NSURL URLWithString:imgUrl];
[imgLogo setImageWithURL:urlTemp placeholderImage:[UIImage imageNamed:@"placeholder.jpg"]];
}
UIButton *btnLocationRight=(UIButton *)[cell viewWithTag:600];
UIButton *btnLocationPlus=(UIButton *)[cell viewWithTag:500];
if ([[row valueForKey:@"subscribed"] isEqualToString:@"Y"]) {
[btnLocationRight setHidden:NO];
[btnLocationPlus setHidden:YES];
cell.contentView.backgroundColor = [Global colorFromHexString:@"#f0f9fc"];
[btnLocationRight setImage:[UIImage imageNamed:@"righbtn.png"] forState:UIControlStateNormal];
[btnLocationRight setTag:indexPath.row];
// [btnLocationRight addTarget:self action:@selector(ButtonPressed:) forControlEvents:UIControlEventTouchUpInside];
// [cell addSubview:[self buttonWithMap:cell :@"righbtn.png":indexPath.row]];
}else{
cell.contentView.backgroundColor = [UIColor whiteColor];
[btnLocationPlus setTag:indexPath.row];
[btnLocationPlus addTarget:self action:@selector(ButtonPressed:) forControlEvents:UIControlEventTouchUpInside];
[btnLocationPlus setImage:[UIImage imageNamed:@"darkplusbtn.png"] forState:UIControlStateNormal];
[btnLocationRight setHidden:YES];
[btnLocationPlus setHidden:NO];
// [cell addSubview:[self buttonWithMap:cell :@"darkplusbtn.png" :indexPath.row]];
}
NSString *stars=[NSString stringWithFormat:@"%d.png",[[row valueForKey:@"rating"] intValue]];
imgRating.image=[UIImage imageNamed:stars];
}
請至少提供一些代碼,'cellForRow'方法。 –
@LordZsolt:我添加了代碼。 –