これはおそらくばかげた質問だと思います...しかし、とにかく私はこの種の奇妙なUIButton
タイトルの振る舞いをしています。
ボタンが設定され、IBのアクションとプロパティの両方に接続されています(アクションはstartButtonPushed
であり、プロパティはですstartButton
)。ビューコントローラ内で、次のようにアクションを設定しています。
bool buttonStateStop;
- (IBAction)startPushed:(id)sender
{
if (buttonStateStop)
{
[appD.locationManager stopSavingLocations];
startButton.titleLabel.text = @"Start";
buttonStateStop = NO;
}
else
{
[appD.locationManager startSavingLocations];
startButton.titleLabel.text = @"Stop";
buttonStateStop = YES;
}
}
元々、IBのデフォルトのタイトルを「開始」に設定していましたが、ボタンを押すたびに、ほんの一瞬「停止」に変わり、その後元に戻ります。タイトルが「スタート」に戻され続ける理由を理解するためにしばらく時間を費やしました。やがて、IBのタイトルを「xxxxxx」に変更しましたが、ボタンのタイトルが変更された直後に、IBのタイトルが再度アサートされることに気付きました。
したがって、問題は、なぜIBがボタンのタイトルをデフォルトに戻し続けるのかということです。私はこれまでこの行動に出くわしたことがありません。そして(明らかに)どうすればそれを修正できますか?
追加情報:ボタンへの唯一の参照は、@property
上記@synthesize
のコードの、、、およびステートメントです。ビューはナビゲーションコントローラーの内部にあります。