私はobjective-cプログラミングを初めて学びました。 私はviewcontrollerのヘッダーファイルに、私のviewcontrollerとfloat変数にuisliderを持っています。 私は2番目のビューの外観を変更する新しいクラスを持っています。私はdrawRectを上書きしました。ViewControllerから浮動小数点数をいくつかのクラスに渡す
私は単にslider.valueの値をとり、それを私のfloat変数に保存します。次に、この変数は描画する線の幅を定義するため、私のクラスでfloat変数にアクセスしようとします。私のビューコントローラの
ヘッダファイル
@interface ViewController : UIViewController
{
float lineWidth;
}
@property float lineWidth;
-(float)changingline;
@end
viecontroller.m // sliderForLine = UISlider
- (IBAction)valuechangedForLine:(UISlider *)sender
{
float sliderValue = sliderForLine.value;
lineWidth = sliderValue;
[self changingline];
}
-(float)changingline
{
NSLog(@"%f", lineWidth);
return lineWidth;
}
のNSLogは、どのように秒を指定する線幅いくつかの値
クラスがあると言いますUIViewは次のようになります
#import "ViewController.h"
ViewController *oldView = [[ViewController alloc] init];
CGContextSetLineWidth(ctx, oldView.lineWidth);
NSLog(@"%f",oldView.lineWidth);
と私が使用している理由はここに、第二のクラスでは、のNSLogは、私は混乱している常に0
を言う、私は今も知らない - (ボイド)チェンジ:)
私が知っているすべてのクラス間で値を渡す方法を主なポイントにしていないということです。誰かが私が間違っていることを説明することができますか?事前に
ありがとう:]
浮動小数点値をあるクラスから別のクラスに渡す方法について詳しく説明してください。あなたの設定を理解できないようです。 –
まったく新しい 'ViewController'オブジェクトを作成していますので、float値は一度もインスタンスに設定されていません。既存のView Controllerへの参照を保持するか、プロトコルとそれぞれのメソッドを作成して、その値をデリゲートに渡す必要があります。 – Rog