1

次の添付画像を参照してください。 から白い色を取り除きたい UITableViewCell。テーブルビューセルから白い色を取り除く方法.? ここに画像の説明を入力

これが私のコードです:

-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
   {

        static NSString *CellIdentifier = @"Cell";

        UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
    cell=nil;

        if (cell == nil) {
         cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
       }
        Schedule *sch=(Schedule*)[tableDataList objectAtIndex:indexPath.row];

        NSString*ptime=@"";

      if(sch.ptime.length<8){
        ptime=[ptime stringByAppendingString:@"  "];
        ptime=[ptime stringByAppendingString:sch.ptime];
     }
    else
   {
     ptime=[ptime stringByAppendingString:sch.ptime];
  }

    UILabel *lbPTime=[[UILabel alloc]initWithFrame:CGRectMake(5, 10, 80, 25)];
    lbPTime.font=[UIFont fontWithName:@"Zawgyi-One" size:15];
    lbPTime.textColor=[UIColor whiteColor];
   [lbPTime setText:ptime];

   NSString*pname=@"";
   pname=[pname stringByAppendingString:sch.pname];
   pname=[pname stringByAppendingString:@" "];

   UILabel *lbPName=[[UILabel alloc]initWithFrame:CGRectMake(lbPTime.frame.size.width, 10, 250, 25)];
   lbPName.font=[UIFont fontWithName:@"Zawgyi-One" size:15];

  CGSize maximumLabelSize=CGSizeMake(296, 9999);
  CGSize expectedLabelSize= [pname sizeWithFont:lbPName.font
                                            constrainedToSize:maximumLabelSize
                                                lineBreakMode:lbPName.lineBreakMode];
  CGRect newFrame=lbPName.frame;
  newFrame.size.height=expectedLabelSize.height;
  newFrame.size.width=expectedLabelSize.width;
  lbPName.frame=newFrame;
  lbPName.numberOfLines=0;
  lbPName.lineBreakMode=UILineBreakModeWordWrap;
  lbPName.textColor=[UIColor whiteColor];
  [lbPName setText:pname];

  [cell.contentView addSubview:lbPTime];
  [cell.contentView addSubview:lbPName];
  [cell.contentView sizeToFit];

  UIView *v = [[UIView alloc]init];
  v.backgroundColor = self.tableview.backgroundColor;//[UIColor clearColor];

  cell.selectedBackgroundView = v;
  cell.backgroundColor=[UIColor clearColor];
  return cell;
}
4

6 に答える 6

3

このコードを使用して、白い枠を削除します。

tableView.separatorColor = [UIColor clearColor];

編集 :

それらの白いブロックは、UILabel使用したためです。背景色を に変更しclearColorます。

lbPTime.backgroundColor = [UIColor clearColor];
lbPName.backgroundColor = [UIColor clearColor];
于 2013-03-06T09:25:52.393 に答える
0

ラベルの背景はクリアカラーに設定する必要があると思います

lbPName.backgroundColor=[UIColor clearColor];
于 2013-03-06T09:28:23.840 に答える
0

まあ、それはtextLabelの背景色です(このコードを試してください):

cell.textLabel.backgroundColor = [UIColor clearColor];

試してみてください。

于 2013-03-06T09:28:55.413 に答える
0

白い枠を削除するには:

tableView.separatorColor = [UIColor clearColor];
于 2013-03-06T09:25:33.377 に答える