UIView に UIButton があります。これは、.xib ファイルから割り当てて初期化した UIViewController にあります。
IBAction を UIButton の「Touch Down」イベントにフックすると、正しくトリガーされます。しかし、「Touch Up Inside」イベントに接続すると反応しません。
他のイベントも機能しません。「タッチドラッグエンター」「タッチドラッグイグジット」「タッチアップアウトサイド」など。タッチダウンのみ。
なぜこれが考えられるのか誰にも分かりますか?
このボタンは、View Controller 内の単純な角丸長方形のボタンです。ビューコントローラーを次のようにロードしました:
-(void) pushNewViewController
{
MyViewController* newViewController = [[MyViewController alloc] initWithNibName:@"MyViewController" bundle:nil];
[self.view addSubview:newViewController.view];
[newViewController release];
}
IB で、このボタンを丸みを帯びた四角形のボタンに MyViewController に追加しました。次の IBAction を作成しました。
-(IBAction) buttonTouchDown:(id)sender
{
NSLog(@"Button Touch Down Event Fired.");
}
-(IBAction) buttonTouchUpInside:(id)sender
{
NSLog(@"Button Touch Up Inside Event Fired.");
}
IB I メニューでボタンをクリックし、Touch Down アウトレットを MyViewController にドラッグして、buttonTouchDown: を選択しました。IB xib を保存しました。
ボタンを実行してテストすると、「ボタンタッチダウンイベントが発生しました」というログメッセージが表示されます。
しかし、IB に戻って Action を Touch Up Inside に変更し、それを buttonTouchUpInside: IBAction に接続して保存します。もう一度テストしますが、応答がありません。
よろしく、リッチ