iPhoneアプリを開発しています。ユーザーがボタンをタップすると、半透明の UIImageView がページに表示されます (つまり、ページ全体をカバーします)。UIImageView は半透明なので、その下にあるボタンが表示されます。ボタンをクリックすると(UIImageViewはその上にありますが)、ボタンクリックが処理されます。しかし、私はこれを止めたいです。UIImageView が一番上にある場合、(メソッドを呼び出す) UIImageView に触れるだけで機能します。その下にあるものに触れてはいけません。
質問する
613 次
6 に答える
2
yourImageViewがボタンの上のUIImageViewであると仮定し、これを実行します。
[yourImageView setUserInteractionEnabled:YES];
于 2012-10-02T05:56:24.357 に答える
1
次の選択肢があります。まず、UIImageViewがボタンの上にあることを確認します。bringSubviewToFrontを使用して前面に移動します
- UIImageViewのuserInteractionを無効にすることができます。
- UIImageViewに関連付けられたアクションがある場合は、UIImageViewではなくUIButtonを優先して、画像をUIButtonの背景として設定し、このボタンで実行するために必要なアクションを追加できます。
于 2012-10-02T05:57:34.307 に答える
0
半透明のimageViewをself.viewではなく、アプリケーションのウィンドウに追加するとよいでしょう。このような:
AppDelegate *delegate = (Appdelegate *)[[UIApplication sharedApplication] delegate];
[delegate.window addSubview:yourImageView];
yourImageViewを削除するには、
[yourImageView removeFromSuperView];
于 2012-10-02T06:14:56.543 に答える
0
your_semi_transparent_ImageView.userInteractionEnabled = YES;
于 2012-10-02T05:59:00.900 に答える
0
ボタンをクリックして UIView を追加し、UIImageview をビューのサブビューとして追加できます。次に、uiview のアルファを減らします。
于 2012-10-02T06:04:35.707 に答える
-1
ImageView が表示されているときにボタンを非表示にして無効にします。
[button setEnabled:NO]; // If you want the button not to respond
[button setHidden:YES]; // If you want the button not to be seen
于 2012-10-02T05:55:10.493 に答える