簡體   English   中英

UILabel的外觀似乎無濟於事

[英]UILabel appearance doesn't seem to do anything

似乎[UILabel appearance]在最新的iOS SDK中不再起作用。

讓我們以這個為例:

- (void)viewDidLoad {
    [super viewDidLoad];
    [[UILabel appearance] setBackgroundColor:[UIColor redColor]];
    [self.view addSubview:[[UILabel alloc] initWithFrame:CGRectMake(40, 80, 200, 100)]];
}

此代碼不會以紅色背景顯示標簽。

另一方面,如果使用此代碼:

- (void)viewDidLoad {
    [super viewDidLoad];
    [[UIImageView appearance] setBackgroundColor:[UIColor redColor]];
    [self.view addSubview:[[UIImageView alloc] initWithFrame:CGRectMake(40, 80, 200, 100)]];
}

那么紅色區域是可見的。

即使更改屬性,即更改字體或文本顏色(並顯示一些文本),也看不到任何更改。

在大多數關於UILabel和外觀的SO問題上,盡管有些人確實有一些問題,但總體上似乎可行,所以我不明白我在這里做錯了什么。

@matt的評論使我發現了錯誤。 (不幸的是,他撤回了他的答案,所以我不能給他他應得的學分,如果您正在聽@matt,請再給出一個答案以得到學分)。

之所以如此,是因為它似乎是iOS 12中的錯誤。在(測試版)iOS 13下,行為符合預期。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM