0

私のウィンドウには、サブクラスHypnosisViewController.mを追加するためのこのコードがあります。私の目標は、コントロールが値を変更したときにインスタンスのプロパティを設定することです。UIViewHypnosisViewUIColor circleColorHypnosisViewUISegmented

- (void) loadView 
{
    CGRect frame = [[UIScreen mainScreen] bounds];
    HypnosisView *v = [[HypnosisView alloc] initWithFrame:frame];
    CGRect segment = CGRectMake(200, 300, 75, 20);
    UISegmentedControl *colors = [[UISegmentedControl alloc]initWithFrame:segment];
    [v addSubview:colors];
    [self setView:v];
}

次に、ここからアウトレットをそのまま使用したいと思いますが、IBActionこのコードを使用すると、xcode はカスタム クラスの getter/setter メソッドを認識しません。

- (IBAction)setRingColor:(id)sender
{
    if ([sender selectedSegmentIndex] == 0)
    {
        [self.view setCircleColor:[UIColor redColor]]; 
    }
}

これをカスタムに伝えるにはどうすればよいUIViewですか?

4

1 に答える 1

2

派生型にダウンキャストする必要があります。

[((HypnosisView *)self.view) setCircleColor:[UIColor redColor]];
于 2012-07-21T00:25:59.077 に答える