0

UINavigationBar を UIView に追加しようとしています。UINavigationBar だけを追加すると、すべて問題ありません。タイトルと 2 つのボタンで UINavigationItem を定義し、これを UINavigationBar に追加すると、問題が発生します。私のコードをチェックしてください。

UINavigationBar *navigationBar = [[UINavigationBar alloc]init];
    [navigationBar setTintColor:[UIColor whiteColor]];
    [navigationBar setBarTintColor:[UIColor redColor]];
    UIFont *font = [UIFont fontWithName:@"HelveticaNeue-CondensedBold" size:(20.0)];
    NSDictionary *attrNormal = [NSDictionary dictionaryWithObjectsAndKeys:[UIColor whiteColor], NSForegroundColorAttributeName, font, NSFontAttributeName, nil];
    [navigationBar setTitleTextAttributes:attrNormal];

    UINavigationItem *navigationItem = [[UINavigationItem alloc]initWithTitle:@"Title"];


    UIBarButtonItem *addButton = [[UIBarButtonItem alloc]initWithBarButtonSystemItem:UIBarButtonSystemItemAdd target:primaryViewController action:nil];
    UIBarButtonItem *editButton = [[UIBarButtonItem alloc]initWithBarButtonSystemItem:UIBarButtonSystemItemEdit target:self action:@selector(tableEdit)];

    [navigationItem setRightBarButtonItem:addButton animated:YES];
    [navigationItem setLeftBarButtonItem:editButton animated:YES];

    [self.navigationBar setItems:[NSArray arrayWithObject:navigationItem] animated:YES];

    [navigationBar setFrame:CGRectMake(0, 0, self.bounds.size.width, 60)];
    [self addSubview:navigationBar];
4

2 に答える 2

0

「init」メソッドを使用しているときに何か問題が発生しています。initWithFrame に変更すると、すべて問題ありません。

UINavigationBar *navigationBar = [[UINavigationBar alloc]initWithFrame:CGRectMake(0, 0, self.view.bounds.size.width, 60)];
于 2013-11-05T22:07:31.193 に答える