Прикрепите UILable к UIView или UIImageView - PullRequest
0 голосов
/ 07 декабря 2011

У меня есть подпредставление в моем приложении, которое содержит UIImageView. Пользователь может коснуться этого подпредставления и переместить его. У меня есть несколько UILabels, которые я хочу «прикрепить» или сгруппировать с подпредставлением, чтобы они двигались вместе с ним. Интересно, как это сделать? Вот где я добавляю ярлыки в подпредставление:

- (void)viewDidLoad
{
 [super viewDidLoad];

//Decrease the site of root CALayer of the view and give it round corners
self.view.layer.backgroundColor = [UIColor orangeColor].CGColor;
self.view.layer.cornerRadius = 10.0;
self.view.layer.masksToBounds = YES;
self.view.layer.frame = CGRectInset(self.view.layer.frame, 40, 40);

//check if the background is from the photo library and create a sublayer for the semi transparent white badge and a textsublayer for the countdown labels. Also hide the regular view labels


NSString *path = [_occasion imagePath];

if (path != nil && [path hasPrefix:@"ass"])
{

    //Make a subview with a UIImageView inside for the badge
    CGRect  badgeRect = CGRectMake(32, 13, 236, 222);
    UIView *badge = [[UIView alloc] initWithFrame:badgeRect];
    imageView = [[UIImageView alloc]initWithFrame:[badge frame]];

    [imageView setImage:[UIImage imageNamed:@"badge.png"]];

    [badge addSubview:imageView];

    [self.view addSubview:badge];

    /*[self.view bringSubviewToFront:countDownLabel];
    [self.view bringSubviewToFront:daysLabel];
    [self.view bringSubviewToFront:hoursLabel];
    [self.view bringSubviewToFront:minutesLabel];
    [self.view bringSubviewToFront:secondsLabel];
    [self.view bringSubviewToFront:daysName];
    [self.view bringSubviewToFront:hoursName];
    [self.view bringSubviewToFront:minutesName];
    [self.view bringSubviewToFront:secondsName];*/

    [badge addSubview:countDownLabel];
    [badge addSubview:daysLabel];
    [badge addSubview:hoursLabel];
    [badge addSubview:minutesLabel];
    [badge addSubview:secondsLabel];
    [badge addSubview:daysName];
    [badge addSubview:hoursName];
    [badge addSubview:minutesName];
    [badge addSubview:secondsName];
//more code for recognizing the touches on the subview

Ответы [ 2 ]

1 голос
/ 07 декабря 2011

Вы можете получить позицию вашего подпредставления и изменить положение ваших ярлыков в соответствии с этим.

1 голос
/ 07 декабря 2011

Просто поместите их в UIImageView, и они будут двигаться вместе с ним.

...