6

インターネットから何かをダウンロードしているときに、ビューを使用してMBProgressHUD読み込み状態を表示しています。ダウンロードが終了したら、hideメソッドを呼び出してビューを非表示にします。タイマーを使用して、ビューの非表示、つまりisHiddenメソッドをチェックして、ダウンロードが終了したかどうかを判断したいと思います。しかし、ビューの非表示をYESに設定し、isHiddenメソッドをチェックすると、NOが返されます。ビューがこのように機能する理由がわかりませんか?

いくつかのスニペットは次のとおりです。

MBProgressHUD   *HUD; // instance variable

ダウンロード終了メソッドの場合:

[HUD hide:YES];
NSLog(@"HUD isHidden: %@",[HUD isHidden] ? @"YES" : @"NO");

メソッドが呼び出されると、出力はNOになります。

4

2 に答える 2

5

MBProgressHUDの実装に従って、UIViewのhiddenプロパティを使用して非表示にすることはありません。MBProgressHUDのアルファを0に設定して、表示されないようにします。

于 2013-01-23T08:54:48.100 に答える
4

見つけた:

メソッドでは、MBProgressHUD isHiddenデフォルトでNOを設定して、常に(チェックしたとき)に設定できるようにしますNO。スーパービューをチェックインしません。

チェックMBProgressHUDステータスの非表示/表示

[HUD setHidden:YES];その後、正常に動作するように設定 し[HUD hide:YES];ます。

NSLog(@"HUD isHidden: %@",[HUD isHidden] ? @"YES" : @"NO");
//Output in consol YES
于 2013-01-23T09:10:24.163 に答える