1

こんにちは、データが Web サービスからロードされているときのユーザー操作を無効にする方法。UiView

次の行を使用してユーザー操作を無効にしましたが、機能していません。

self.view.userinteractionenabled=NO;

Webサービスの終了時にYESを置き換えました。

機能していないため、UINavigation問題が発生します。didSelectRowタップすると、さらにいくつかのビューが表示されます。

4

2 に答える 2

1
self.view.userinteractionenabled = NO;

これは、ユーザーがタッチできないことを意味しますがself.view、ページにある場合、tabbarControllerまたはnavigationControllerユーザーが両方をタッチできる場合です。

UIViewしたがって、これの代わりに、新しいonを追加しwindow、Web サービスが終了したらスーパービューから削除します。

追加方法:-

view = [[UIView alloc]initWithFrame:CGRectMake(0.0, 0.0, 320.0, 480.0)];
[view setBackgroundColor:[UIColor blackColor]];
[view setAlpha:0.5];
AppDelegate *appdelegate = (AppDelegate *)[[UIApplication sharedApplication]delegate];
[appdelegate.window addSubview:view];

そしてただ書く

[view removeFromSuperview]; 

あなたのウェブサービスを終えた後。Appdelegate.hもちろん、を使用するにはインポートする必要がありますAppdelegate

于 2012-09-22T06:30:24.003 に答える
0

view の userInteraction を設定しているため、ビューを無効にしますが、navigationBack ボタンは window にあるため、ビューを無効にするのではなく、ウィンドウの userInteraction を無効にします。

ここにコードがあります

AppDelegate *appdelegate = (AppDelegate *)[[UIApplication sharedApplication]delegate];
appdelegate.window.userInteractionEnabled = NO;
于 2012-09-22T10:08:35.103 に答える