如何创建对对象的引用以在 iOS 中对其进行动画处理
Posted
技术标签:
【中文标题】如何创建对对象的引用以在 iOS 中对其进行动画处理【英文标题】:How can I create a reference to an object to animate it in iOS 【发布时间】:2012-09-24 04:27:55 【问题描述】:我有一个imageView
,我在里面放了一个按钮。我有两个问题:
imageView
来为视图设置动画?
代码:
- (void)viewDidLoad
[super viewDidLoad];
UIImageView *grayFrame = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"expSqrGray.png"]];
[self.view addSubview:grayFrame];
grayFrame.frame = CGRectOffset(grayFrame.frame, 0, 0);
UIButton *testButton = [UIButton buttonWithType:UIButtonTypeCustom];
testButton.frame = CGRectMake(20, 20, 200, 44);
testButton.backgroundColor = [UIColor blackColor];
[testButton setTitle:@"Test" forState:UIControlStateNormal];
[testButton addTarget:self action:@selector(tapped:) forControlEvents:UIControlEventTouchUpInside];
[grayFrame addSubview:testButton];
//[self.view addSubview:testButton];
【问题讨论】:
你想做什么样的动画? 只需将带有按钮的图像从底部移动到一定高度即可。 是你想要动画的按钮吗?还是按钮内的图片? 我希望图像和按钮都使用相同的动画。图片将作为背景,我还将在其上添加标签。 【参考方案1】:我对 Objective-C 知之甚少,但您可能想要做的是为您的类创建 grayFrame
和 testButton
成员变量。这样,您的整个班级都可以访问这两个对象。
例如:
// Test.H
@interface YourClass : NSObject
UIImageView * grayFrame;
UIButton * testButton;
然后您可以使用另一种方法来引用其中任何一个。
- (void) initializeObjects
grayFrame = [ [ UIImageView alloc ] initWithImage:[ UIImage imageNamed:@"expSqrGray.png" ] ];
testButton = [ UIButton buttonWithType:UIButtonTypeCustom ];
// Do things here.
【讨论】:
哇,我真傻。我对所有其他事情感到非常困惑,以至于我忘记了这一点。谢谢以上是关于如何创建对对象的引用以在 iOS 中对其进行动画处理的主要内容,如果未能解决你的问题,请参考以下文章
iOS 8:如何正确设置扩展以使用模拟器在 Xcode 中对其进行调试?