1

UINavigationControllera の中に aを表示したいのですUIPopoverControllerが、なぜかタイトルが設定できません。

SearchViewController *searchView = [[[SearchViewController alloc] init] autorelease];

UIPopoverController *popover = [[UIPopoverController alloc] initWithContentViewController:searchView];
[popover presentPopoverFromBarButtonItem:_searchBarButton permittedArrowDirections:UIPopoverArrowDirectionUp animated:YES];

で変えてみました- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil

- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
    // Change the title
    UILabel *label = [[[UILabel alloc] initWithFrame:CGRectZero] autorelease];
    label.backgroundColor = [UIColor clearColor];
    label.font = [UIFont boldSystemFontOfSize:20.0];
    label.shadowColor = [UIColor colorWithWhite:0.0 alpha:0.5];
    label.textAlignment = UITextAlignmentCenter;
    label.textColor = [UIColor whiteColor];
    label.text = @"Print / Email";
    [label sizeToFit];
    self.navigationItem.titleView = label;
}
return self;
}

私もそれを設定しようとしました- (void)viewDidLoad

- (void)viewDidLoad
{
[super viewDidLoad];

self.contentSizeForViewInPopover = CGSizeMake(320.0, 250.0f);

self.navigationItem.title = @"Print / Email";
self.title = @"Print / Email";
}

しかし、タイトルが機能している場合はありません。私はまだ何か間違っていますか?

4

3 に答える 3

6

編集SearchViewController コントローラーを UINavigationController 広告に追加し、UIPopoverController に次のように追加します。

SearchViewController *searchView = [[[SearchViewController alloc] init] autorelease];
UINavigationController *navController = [[UINavigationController alloc]initWithRootViewController:searchView];
UIPopoverController *popover = [[UIPopoverController alloc] initWithContentViewController:navController];
[popover presentPopoverFromBarButtonItem:_searchBarButton permittedArrowDirections:UIPopoverArrowDirectionUp animated:YES];

SearchViewController の viewDidLoad メソッドで:

- (void)viewDidLoad
{
  [super viewDidLoad];
  self.title = @"Print / Email";
}

uipopovercontroller のタイトルの設定を参照

于 2012-08-21T06:18:12.477 に答える
1

この方法でポップオーバーコントローラーを表示してみてください

SearchViewController *searchView = [[[SearchViewController alloc] init] autorelease];
UINavigationController *navCont=[[UINavigationController alloc] initWithRootViewController:searchView];
UIPopoverController *popover = [[UIPopoverController alloc] initWithContentViewController:navCont];
[popover presentPopoverFromBarButtonItem:_searchBarButton permittedArrowDirections:UIPopoverArrowDirectionUp animated:YES];
于 2012-08-21T06:37:07.710 に答える
1

これを試すことができます:

SearchViewController *searchView = [[[SearchViewController alloc] init] autorelease];

UINavigationController *_nav = [[[UINavigationController alloc] initWithRoot.....:searchView] autorelease];

次に _nav をポップオーバーに入れます。

各 UIViewController には独自のタブバーとナビゲーションがありますが、それらを初期化する必要があります。その後、正しく使用できます。

于 2012-08-21T06:42:24.483 に答える