настройка прозрачного фона для UILabel для приложения iphone - PullRequest
21 голосов
/ 16 февраля 2010

У меня есть UILabel в UITableView. Вот код, который я написал в cellForRowAtIndexPath

    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
    if (cell == nil) {
        cell = [[[UITableViewCell alloc] initWithFrame:CGRectMake(30.0, 5.0, 250.0, 35.0) reuseIdentifier:CellIdentifier] autorelease];
    }   


    CGRect rect = CGRectMake(30.0, 5.0, 250.0, 35.0);
    UILabel *label = [[UILabel alloc] initWithFrame:rect];

    label.opaque = NO;  
    label.font = [UIFont systemFontOfSize:14];
    label.numberOfLines = 2;
    label.textAlignment = UITextAlignmentCenter;            
    label.textColor = [UIColor darkGrayColor];
    label.backgroundColor = [UIColor colorWithRed:0.0 green:0.0 blue:0.0 alpha:0.0];
    [label setText:@"Test Message"];    

    [cell addSubview:label];
    [label release];
    cell.backgroundColor = [UIColor colorWithRed:0.0 green:0.0 blue:0.0 alpha:0.0];
    cell.selectionStyle = UITableViewCellSelectionStyleNone;    

Моим намерением было установить прозрачность фона ячейки и UILabel.

Но это не работает. Кто-нибудь может сказать мне, что я здесь скучаю

Спасибо

Sandeep

Ответы [ 3 ]

74 голосов
/ 24 февраля 2010

Измените следующую строку:

label.backgroundColor = [UIColor colorWithRed:0.0 green:0.0 blue:0.0 alpha:0.0];

к этому:

label.backgroundColor = [UIColor clearColor];
2 голосов
/ 20 апреля 2013

Для тех, кто использует Xamarin.iOS, это очевидно:

UILabel myLabel = new UILabel();
myLabel.Text = "Hello world!";
myLabel.BackgroundColor = UIColor.Clear;
1 голос
/ 03 марта 2014
[label setBackGroundColor:[UIColor clearColor]];

Для установки цвета clearBackGround для метки

...