Вращение и перемещение пользовательского интерфейса

#uiview #rotation

#пользовательский интерфейс #вращение

Вопрос:

Я пытаюсь вращать и перемещать UIImage. Вот мой код :

 im = [[UIImageView alloc ] initWithFrame:CGRectMake(160, 240, 100, 100)];
im.image = [UIImage imageNamed:@"image.png"];
[view addSubview:im];
NSTimer * timer = [NSTimer scheduledTimerWithTimeInterval:1.0/30.0 target:self selector:@selector(actionIm) userInfo:nil repeats:YES];

-(void) actionIm
{
  [im setFrame:CGRectMake(im.frame.origin.x 1 , im.frame.origin.y 1 ,100, 100)];
  im.transform=CGAffineTransformMakeRotation (mRotation);
  mRotation =0.1;
}
  

Результатом является очень странное поведение: если я использую только вращение, это работает. Если я использую только перемещение, это работает. Но оба использования дают странный результат (IUImage странно «прыгает»).

Я много чего знаю о вращении, рамке, границах, центре… но ничего, что могло бы решить мою проблему. Спасибо.

Ответ №1:

Попробуйте переместить центр вместо изменения рамки. Я считаю, что установка рамки, когда вращение не является идентичным, делает что-то другое.