0

私は持っていて、imageViewその中にボタンを置きます。2つの質問があります:

  • 機能を失うことなくボタンを適切に追加するにはどうすればよいですか?
  • 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];
}
4

1 に答える 1

1

私はObjective-Cについてほとんどまたはまったく知識がありませんが、おそらくあなたがしたいのは、クラスの変数を作成grayFrameしてメンバーにすることです。testButtonそうすれば、クラス全体がこれら2つのオブジェクトにアクセスできます。

例えば:

// 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.
}
于 2012-09-24T04:39:22.280 に答える