s の使い方を学ぼうとしてNSTimer
いて、次のことを考えました: スイッチを作成します。アプリが開始されるとタイマーが開始され、1 秒ごとにスイッチの状態を変更する関数が呼び出されます。
これが私がこれまでにしたことです:
ヘッダー ファイル ViewControl.h でタイマーとスイッチの両方を宣言しました。
//Timer
{NSTimer *timer;}
@property (weak, nonatomic) IBOutlet UISwitch *zeSwitch;
次に、ViewControl.m ファイルで次のように定義しました。
- (IBAction)zeSwitch:(id)sender {
UISwitch *zeSwitchSatus = (UISwitch *) sender;
BOOL yn = zeSwitchSatus.isOn;
[zeSwitch setOn:yn animated:YES];
}
- (void)viewDidLoad
{
timer = [NSTimer scheduledTimerWithTimeInterval:1 target:self
selector:@selector(zeSwitch) userInfo:nil repeats:YES];
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
}
したがって、コードを実行すると、オンまたはオフのスイッチが表示されることを願っていました。次に、私が干渉することなく、時間の経過とともにステータスが自動的に変化するのを確認します。
しかし、それはうまくいきませんでした!最初に上の画像を取得します。何も変わりません。その後、スイッチを押すとクラッシュします。(しかし、私の考えでは、まったく触れないでください。)
何か案は?