我正在创建一个视图并让它从左到右移动到屏幕上。我很难让它以我想要的方式工作,但当我这样做时,我对它的工作方式感到困惑。
我想我必须在屏幕左侧创建视图,然后使用 CGAffineTransformTranslate 将其移动到屏幕上。但相反,我在屏幕上创建它,但它仍然很好用。我有点困惑。
在这里,我正在创建视图...
profileViewControllerForIPad = [[ProfileViewController alloc] initWithFrame:CGRectMake(0, 0, 512, 446)];
如您所见,原点是 0,0。所以在屏幕上,对吧?
这是转换...
[UIView animateWithDuration:0.5
animations:^{
self.view.transform = CGAffineTransformTranslate(CGAffineTransformIdentity,self.view.frame.size.width, 0.0);
}
];
如您所见,我将 tx 值设置为 CGAffineTransformTranslate 的宽度,我认为这是您希望它从当前位置移动的像素数的值,origin.x 为 0,我预计会将其移动到屏幕中间某处。相反,它会在我想要的 0 处使用它的新 origin.x 直接滑入。
顺便说一句,CGAffineTransformIdentity 非常适合将视图从屏幕上滑出。
谁可以给我解释一下这个。文档似乎说了些不同的话。
谢谢,
约翰