0

私はクラスを持っています*ColorViewController* DrawRectangle

ColorViewController.hの場合:

#import "DrawRectangle.h"
@interface ColorViewController : UIViewController {
DrawRectangle *DrawRectangle;
}

@property (nonatomic,retain) DrawRectangle *DrawRectangle;

そしてDrawRectangle.hで:

@interface DrawRectangle : UIView {
CGFloat redc;
}
@property (nonatomic) CGFloat redc;

また、ViewController.xibのDrawRectangleクラスをUIViewの1つに追加しました。

ファイルColorViewController.mからCGFloatredcの値を変更したいのですが、次のようにしています。

- (void)viewDidLoad
{
CGFloat myfloat = 1.0;
self.DrawRectangle.redc = myfloat;

DrawRectangleでこの「redc」を使用してNSLogを呼び出していますが、毎回0.0000000と表示されます。

ViewControllerの「redc」の値を置き換えるにはどうすればよいですか?NSNotificationを使用する必要はないと思います。DrawRectangleをViewControllerにロードすると、もっと簡単な方法があるはずです。

4

1 に答える 1

2

オブジェクトはまだインスタンス化されていないようです。試す:

-(void)viewDidLoad {
    [super viewDidLoad];

    CGFloat myfloat = 1.0;
    [drawRectangle setRedc:myfloat];
}

また、一般的なプログラミング手法として、オブジェクトにクラスと同じ名前を付けることは避けてください。オブジェクトの名前をに変更することをお勧めしますdrawRectangle

また、xibにdrawRectangleオブジェクトを接続する必要があります

@property (nonatomic, retain) IBOutlet DrawRectangle *drawRectangle;
于 2012-04-05T23:06:04.043 に答える