Как добавить правую кнопку на UINavigationBar в UITabBar

#uinavigationcontroller #uitabbar #uitabbaritem

#uinavigationcontroller #uitabbar #uitabbaritem

Вопрос:

У меня возникла проблема при добавлении правой кнопки на uinavigationbar. Мой органайзер для перьев, подобный этому:

CustomTabViewController:UIViewController

—>CustomTableViewController1: UIViewController

—>CustomTableViewController2: UIViewController

Пользовательские tabviewcontrollers находятся в элементах панели вкладок

Мне нужно сохранить входные данные, я могу добавить элемент навигации из контроллера навигации, но я не могу добавить их из контроллера просмотра, когда они являются дочерними элементами в элементах панели вкладок. вот мой код:

 @interface CustomTabViewController : UIViewController <UITabBarDelegate> {
     NSArray *detailViews;
    IBOutlet UITabBar *tabBar;
    IBOutlet UITabBarItem *tabBarItem1;
    IBOutlet UITabBarItem *tabBarItem2;
    UIViewController *selectedViewController;

}

@property (nonatomic, retain) NSArray *detailViews;
@property (nonatomic, retain) IBOutlet UITabBar *tabBar;
@property (nonatomic, retain) IBOutlet UITabBarItem *tabBarItem1;
@property (nonatomic, retain) IBOutlet UITabBarItem *tabBarItem2;
@property (nonatomic, retain) UIViewController *selectedViewController;
@end

@implementation TabViewController

@synthesize detailViews;
@synthesize tabBar;
@synthesize tabBarItem1;
@synthesize tabBarItem2;
@synthesize selectedViewController;

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

    if (self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil]) {

        // Custom initialization
    CustomTableViewController1 *tVC1 = [[CustomTableViewController1 alloc]initWithNibName:@"CustomTableViewController1" bundle:nil];        
        CustomTableViewController2 *tVC2 = [[CustomTableViewController2 alloc]initWithNibName:@"CustomTableViewController2" bundle:nil];


        NSDictionary *detail = [[[Services sharedInstance] getDetail:num] copy];

        [tVC1 setDetail:detail];     
        [tVC2 setDetail:detail];
    NSArray *array = [[NSArray alloc] initWithObjects:tVC1, tVC2, nil];
    self.detailViews = array;
    [self.view addSubview:tVC1.view];
    self.selectedViewController = tVC1;

        [array release];
    [TVC release];
    [TVC release];       
        [detail autorelease];

    }
    return self;
}
// ....
- (void)tabBar:(UITabBar *)tabBar didSelectItem:(UITabBarItem *)item
{
    if (item == tabBarItem1) {

        CustomTableViewController1 *tVC1 = [detailViews objectAtIndex:0];
        [self.selectedViewController.view removeFromSuperview];
        [self.view addSubview:tVC1.view];
        self.selectedViewController = tVC1;

    } else if (item == tabBarItem2) {
        CustomTableViewController2 *tVC2 = [detailViews objectAtIndex:1];
        [self.selectedViewController.view removeFromSuperview];
        [self.view addSubview:tVC2.view];
        self.selectedViewController = tVC2;
    }
}
@end
  

пользовательские контроллеры табличного представления находятся внутри панелей вкладок с некоторым значением по умолчанию, которое необходимо изменить пользователю и сохранить. Я могу добавить правую кнопку на uinavigationbar из моего класса TabViewController, но это не может расширить информацию внутри CustomTableViewController в панели вкладок. Есть ли какой-либо способ добавить правую кнопку на uinavigationbar из пользовательского контроллера представления таблицы, который у меня есть? Можете ли вы показать мне решение?

Комментарии:

1. Я исправил это, передав родительскую ссылку.