Могу ли я установить рамку для UIView после добавления подпредставлений к этому UIView? - PullRequest
0 голосов
/ 14 января 2012

Мне нужен UIView с динамическим размером (он может содержать 1 или 2 метки), и я делаю что-то вроде этого:

float nextY = 0.0f;
float labelHeight = 20.0f;

UIView *tempView = [[UIView alloc] initWithFrame:CGRectZero];

UILabel *label1 = [[UILabel alloc] initWithFrame:CGRectMake(0.0f, nextY, 100.0f, labelHeight)];
label1.text = @"Test 1";
[tempView addSubview:label1];
nextY += labelHeight;    

if (something == YES)
{
    UILabel *label2 = [[UILabel alloc] initWithFrame:CGRectMake(0.0f, nextY, 100.0f, labelHeight)];
    label1.text = @"Test 2";
    [tempView addSubview:label2];
    nextY += labelHeight;
}

tempView.frame = CGRectMake(0.0f, 0.0f, 100.0.f, nextY);

И это нормально?

1 Ответ

0 голосов
/ 14 января 2012

То, что вы делаете, действительно.Если вы установите маску автоматического изменения размера для подпредставлений, то при изменении кадра суперпредставления система также отрегулирует кадры подпредставлений.

...