0

ビュー コントローラーの 1 つで UILabel の特定のテキストに基づいてイメージビューを調整したいのですが、イメージビューのフレームが変わりません。簡単にするために、イメージビューのフレームをハードコードされた値に設定しようとしているだけです。成功せずに次のオプションを試しました:

-(void)viewDidAppear:(BOOL)animated
{
    [super viewDidAppear:animated];
    self.lessonIcon.frame = CGRectMake(0, 0, 20, 20);
}

-(void)viewDidLayoutSubviews
{
    [super viewDidLayoutSubviews];
    self.lessonIcon.frame = CGRectMake(0, 0, 20, 20);
}

//This method is actually one I created.. it gets called in the modal completion callback
-(void)adjustFrame
{
    self.lessonIcon.frame = CGRectMake(0, 0, 20, 20);
}

過去にこのような問題が発生したのは、ビュー自体のレイアウトが完了しておらず、制約と競合していたためです。通常、viewDidLayoutSubviews が適用されると、これは適用されなくなります。しかし、今回は、画像ビューがストーリーボードに配置された場所に頑固にとどまっています。このイメージビューのフレームをプログラムで変更するにはどうすればよいですか?

4

0 に答える 0