标签: uinavigationcontroller

如何关闭我当前的视图控制器并在 iOS 中推送另一个视图控制器

我想关闭我当前的视图控制器并转到下一页?

即关闭当前视图控制器并将另一个视图控制器推入堆栈。

我可以使用以下代码关闭当前页面

[[self navigationController] popViewControllerAnimated: YES];
Run Code Online (Sandbox Code Playgroud)

但是在这之后打开一个新的控制器是行不通的。

uinavigationcontroller ios

0
推荐指数
1
解决办法
5174
查看次数

如何删除并重新添加导航栏上的“后退按钮”

我的视图控制器在导航栏上显示了一个后退按钮(在 UINavigationController 中)。当前视图中有一个“编辑”模式。当进入“编辑”模式时,我将 leftBarButtonItem 替换为“取消”按钮,当退出“编辑”模式时,我想再次将左按钮更改为“后退按钮”,我该怎么做?

我尝试 self.navigationItem.leftBarButtonItem = self.navigationItem.backBarButtonItem,它只是删除了“取消”按钮,但没有取回“后退按钮”。

现在我可以像后退按钮一样使用UI创建一个新的导航项,并将其设置为leftBarButtonItem,但位置与原生后退栏按钮不同,并且失去了向后滑动手势。

有什么办法可以让原生的后退栏按钮项目回到导航栏上?

objective-c uinavigationbar uinavigationcontroller ios backbarbuttonitem

0
推荐指数
1
解决办法
2097
查看次数

点击返回时保存更改 - Swift

我有一个带有导航控制器的主细节故事板。主视图是一个 UITableView,它显示了使用 Core Data 保存的内容列表。当一行被点击时,它会转到一个 Detail 视图,该视图具有一个 UITextView,您可以在其中编辑数据。

当用户点击导航栏中的“返回”时,如何调用可用于自动保存更改的函数(或可用的现有函数)?

master-detail uinavigationcontroller ios swift

0
推荐指数
1
解决办法
1139
查看次数

无法设置模态视图控制器的导航栏颜色

我在 iPhone / iOS 8 上展示了一个像这样的模态视图控制器:

UIApplication*          application        = [UIApplication sharedApplication];
UIWindow*               window             = application.windows[0];
UIViewController*       rootViewController = window.rootViewController;
SomeViewController*     someViewController;
UINavigationController* navigationController;

someViewController   = [[SomeViewController alloc] init];
navigationController = [[UINavigationController alloc] initWithRootViewController:someViewController];

// Set everything to black.
navigationController.navigationBar.barTintColor = [UIColor blackColor];
navigationController.navigationBar.tintColor    = [UIColor blackColor];
navigationController.navigationBar.barStyle     = UIBarStyleBlack;

navigationController.modalTransitionStyle = UIModalTransitionStyleCoverVertical;
[rootViewController presentViewController:navigationController animated:YES completion:nil];
Run Code Online (Sandbox Code Playgroud)

SomeViewController 是一个空的/新鲜的视图控制器,什么也不做(除了尝试将导航栏设置为黑色,但没有成功)。

这是在使用故事板的应用程序中,并且将NVSlideMenuController作为窗口的根。

发生的情况是显示了视图控制器,但导航栏/似乎完全透明,因为当我将someViewController的背景颜色设置为红色时,整个屏幕都是红色的(标题除外)。应用程序的其余部分有一个透明的导航栏。

另一件可能相关的事情是,当应用程序进入后台(使用 iPhone 主页按钮)然后再次进入前台时,视图控制器不再可见。

我在这里错过了什么或做错了什么?

objective-c uinavigationcontroller modalviewcontroller ios

0
推荐指数
1
解决办法
2710
查看次数

使用导航控制器时保持标题视图

我有一个标签,我作为标题放在屏幕的顶部.当我通过嵌入导航控制器添加导航控制器时,我希望保持可见性并仍然存在.

我主要使用故事板来帮助我创建UI.

这是没有导航控制器的应用程序的样子:

应用程序截图与橙色标题

但是,如果我添加导航控制器,我会得到以下内容:

应用程序截图导航栏已替换橙色标题

当然,我想维护一个导航控制器,这样我就不必使用自己的控制导航的按钮.据我了解,目前市场徽标隐藏在导航控制器后面.

user-interface cocoa-touch uinavigationcontroller ios

0
推荐指数
1
解决办法
332
查看次数

href不起作用,使用反应路由器

我正在尝试为弹出模块提供一个单独的URL,我正在使用一个按钮来重定向:

trigger={ <Link href="/exercisesadd">
          <Button style={style} waves='light' > Add new</Button></Link>
        }>
Run Code Online (Sandbox Code Playgroud)

但我收到404错误,即使我在反应路由器中有这条路线:

    export default () => {
    return <Route path="/"component={Container} auth={auth}>
        <IndexRoute component={Home}/>
        <Route path="/portfolio"  onEnter={requireAuth} component={Portfolio} />
        <Route path="/Login" component={Home} />
        <Route path="/home" component={Home}  />
        <Route path="/edit" component={Edits}/>
        <Route path="/exercises" component={Exercises}/>
        <Route path="/exercisesadd" component={Exercises}/>
    </Route>
};
Run Code Online (Sandbox Code Playgroud)

popup hyperlink uinavigationcontroller reactjs react-router

0
推荐指数
1
解决办法
5093
查看次数

标题视图中的Swift UITapGesture无法正常工作

我有一个UINavigationItem,我将它的titleView设置为UIView,它嵌入了UILabel和UIImageView.我正在尝试向视图添加UITapGestureRecognizer,但它似乎不起作用.有解决方案吗 此外,将gestureRecognizer添加到整个navigationBar不是一个选项,因为我有一个rightBarButtonItem并想要使用后退按钮.

这是我的代码:

func configureTitleView() {
    guard let profile = profile else { 
    // Pop navController
    return
  }

    let titleView = UIView()
    titleView.frame = CGRect(x: 0, y: 0, width: 100, height: 40)

    let containerView = UIView()
    containerView.translatesAutoresizingMaskIntoConstraints = false
    titleView.addSubview(containerView)

    let profileImageView = UIImageView()
    profileImageView.translatesAutoresizingMaskIntoConstraints = false
    profileImageView.contentMode = .scaleAspectFill
    profileImageView.clipsToBounds = true
    let imageURL = URL(string: profile!.firstProfilePicture!)
    profileImageView.sd_setImage(with: imageURL)

    containerView.addSubview(profileImageView)

    profileImageView.leftAnchor.constraint(equalTo: containerView.leftAnchor).isActive = true
    profileImageView.centerYAnchor.constraint(equalTo: containerView.centerYAnchor).isActive = true
    profileImageView.widthAnchor.constraint(equalToConstant: 36).isActive = true
    profileImageView.heightAnchor.constraint(equalToConstant: 36).isActive = true

    profileImageView.layer.cornerRadius = 36 …
Run Code Online (Sandbox Code Playgroud)

uinavigationcontroller uinavigationitem ios swift

0
推荐指数
1
解决办法
620
查看次数

如何从导航堆栈中删除ViewController,而不能选择返回它 - Swift

我有一个登录页面,如果登录成功,用户将被带到登陆viewController(VC).我有一个navigationController.我弹出登录VC并推入登陆VC.我遇到的问题是登录VC在堆栈中持续存在,如导航控制器上的左键所示,它会导航回登录页面.如何从堆栈中完全删除登录VC,以便导航控制器在用户登录后无法导航回用户?

 self.navigationController?.popViewController(animated: true)

 let landingPage = self.storyboard?.instantiateViewController(withIdentifier: "landingPage") as! 
 LandingViewController

 self.navigationController?.pushViewController(landingPage, animated: true)
Run Code Online (Sandbox Code Playgroud)

uinavigationcontroller ios swift

0
推荐指数
1
解决办法
1239
查看次数

在swift 4下更改导航控制器后退按钮上的字体

Swift 4,iOS 11.2.5 Xcode 9.2

尝试更改后退按钮的字体。找到了以前尝试过的解决方案,但是在我的配置(选项卡栏控制器内的导航控制器)下,似乎在Swift 4,iOS 11.2.5下都无法正常工作。

得到此代码后,第一行和最后一行有效,但中间的三行无效。

self.navigationController?.navigationBar.titleTextAttributes = [ NSAttributedStringKey.font: UIFont(name: "AvenirNextCondensed-DemiBoldItalic", size: 20)!]
navigationItem.backBarButtonItem?.setTitleTextAttributes([NSAttributedStringKey.font: UIFont(name: "AvenirNextCondensed-DemiBoldItalic", size: 20)!], for: .normal)
navigationItem.backBarButtonItem?.setTitleTextAttributes([NSAttributedStringKey.font: UIFont(name: "AvenirNextCondensed-DemiBoldItalic", size: 20)!], for: .highlighted)
navigationItem.backBarButtonItem?.setTitleTextAttributes([NSAttributedStringKey.font: UIFont(name: "AvenirNextCondensed-DemiBoldItalic", size: 20)!], for: .focused)
navigationItem.title = "Filter \(titleSelection!) [shake to clear]"
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

这是viewDidLoad方法。应该行吗?

fonts uinavigationcontroller ios swift

0
推荐指数
1
解决办法
1324
查看次数

如何在swift项目中隐藏所有视图控制器的页脚附加我的导航控制器?

我正在使用swift项目,它使用Xcode 9和swift 4.1.我创建了一个导航视图控制器,然后创建了其他视图控制器并附加了导航视图控制器.

所以我默认有页眉和页脚.所以我有两个问题,

  1. 现在我想要更改除白色之外的页脚颜色,但是当我为其编写任何代码时,它会在页脚后面缩小,我看不到任何没有白色的颜色.我如何为页脚添加任何颜色?

  2. 如果我无法为页脚赋予颜色,那么我想使用波纹管代码隐藏该页脚

    override func viewWillAppear(animated: Bool)
    {
       self.navigationController?.navigationBarHidden = true
    }
    
    Run Code Online (Sandbox Code Playgroud)

但是通过这种颜色,我只能隐藏页眉而不是页脚.所以我如何使用代码隐藏页脚,所以我创建了自定义页脚我想要的.

如何在swift 4.1中解决上述问题?

footer uinavigationcontroller ios swift4 xcode9

0
推荐指数
1
解决办法
121
查看次数