首页 文章

UINavigation leftBarItem显示后退按钮和其他按钮

提问于
浏览
0

我有一个用拆分视图控制器打开的应用程序,左边的表包含客户列表,右边是用户日历 . 从表中选择客户将使用客户详细信息视图替换日历视图 . 此视图中的左侧导航项是标准iOS后退按钮,可将您带回日历视图 .

我现在正致力于增强Google Map 的增强功能 . Map 视图具有类似的设置,左侧是表格,右侧是 Map . 从 Map 拆分视图返回到初始拆分视图有几个选项,但旁路显示日历并向右显示客户详细信息 .

该项目要求用户能够从客户详细信息页面返回到 Map 视图 . 流程看起来像这样:

enter image description here

我需要做的是在客户详细信息viewcontroller的navcontroller中添加一个按钮,让用户返回到map viewcontroller . 我遇到的问题是如果我添加一个按钮导航回 Map 我失去了默认的后退按钮 . 我希望两者都在导航中 .

我使用此代码来显示新按钮,但self.navigationItem.leftBarButtonItems似乎不包含默认的后退按钮 .

if (self.fromGoogleMap) {

    NSMutableArray *barbuttonItems = [[NSMutableArray alloc] initWithArray:self.navigationItem.leftBarButtonItems];

    UIImage* imgMapBarButton = [UIImage imageNamed:@"img_mapbarbutton.png"];
    UIBarButtonItem* btnGoogleMap = [[UIBarButtonItem alloc] initWithImage:imgMapBarButton landscapeImagePhone:imgMapBarButton style:UIBarButtonItemStylePlain target:self action:@selector(launchGoogleMapView:)];

    [barbuttonItems addObject:btnGoogleMap];

    self.navigationItem.leftBarButtonItems = barbuttonItems;

}

enter image description here

那么如何在导航中添加按钮但保留默认的后退按钮?

1 回答

  • 1

    尝试在那里添加此行,它旨在表示“除了后退按钮之外还显示左侧项目” .

    self.navigationItem.leftItemsSupplementBackButton = YES;
    

    Apple Docs参考leftItemsSupplementBackButton

相关问题