0

ビューコントローラでナビゲーションバーを非表示にする必要があります。そうです

- (void)viewDidLoad
{
     [self.navigationController.navigationBar setHidden:YES];
     [super viewDidLoad];
}

しかし、アプリの起動時にWebviewをロードするために新しいスレッドを開始する必要がある場合は、

- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
   self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
   if (self)
       [NSThread detachNewThreadSelector: @selector(doStuff) toTarget:self withObject:NULL];
   return self;
}

- (void)doStuff
{
   NSLog(@"Starting a new thread ...");

   url = [NSURL URLWithString:@"http://www.google.com"];
   NSURLRequest *request = [NSURLRequest requestWithURL:url];
   [newsWebView loadRequest:request];
}

ナビゲーションバーは引き続き表示されます。

アプリの起動時に、ナビゲーションバーを非表示にして、このViewControllerの別のスレッドにWebビューをロードしたいだけです。tabBarをタップすると、このviewControllerはユーザーが表示できるようになります。

何が問題なのかわかりますか?または私はそれを間違った方法でやっていますか?ありがとうございました...

4

2 に答える 2

1

このビューに移動しようとすると、親またはその前のビューでナビゲーションバーを非表示にする必要があり、問題は次のように解決されます

前のビューでボタンがクリックされたときに、このビューがナビゲートされると想定します

ボタンのアクションメソッドで、現在のビューに移動する前にこの行を配置します

[self.navigationController.navigationBar setHidden:YES];

ハッピーコーディング:)

于 2012-08-07T06:54:50.993 に答える
0

こんにちは私はこのコード行を配置する方が良いと思います

[self.navigationController.navigationBar setHidden:YES];

メソッドで

- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil

私はそれがうまくいくことを願っています。

于 2012-08-07T04:44:13.647 に答える