在视图控制器之间导航的按钮
Posted
技术标签:
【中文标题】在视图控制器之间导航的按钮【英文标题】:Buttons to navigate between view controllers 【发布时间】:2014-05-22 14:52:03 【问题描述】:我一直在寻找一种方法来解决我几天来一直遇到的问题,但经过多次谷歌搜索和在这里搜索后,我仍然无法解决它。我对 ios 编程非常陌生,但参加了为期 4 周的“速成课程”并学到了一些东西。
所以目前我设置了三个视图控制器,并希望使用按钮在每个视图控制器之间进行切换,这样如果用户在第一页,他们可以转到第二页或第三页,然后从该页返回到其中一个他们想要的页面。
这是我在第一个视图控制器中的内容:
#import <UIKit/UIKit.h>
#import "Galleries.h"
#import "JotForm.h"
@interface MainView : UIViewController
@property (strong, nonatomic) IBOutlet UIButton *galleryButton;
@end
然后在实现文件中我有这个来处理切换到新视图。
- (IBAction)galleryButton:(id)sender
Galleries *gallery = [[Galleries alloc]initWithNibName:@"Galleries" bundle:nil];
[self.navigationController pushViewController:gallery animated:YES];
到目前为止,当我运行程序时它会启动,但是当我单击图库按钮时它什么也不做。如何让它切换到下一个视图?我没有使用导航控制器,因为我想在每个视图的应用程序顶部都有三个按钮,但不知道如何使用导航控制器来做到这一点。本质上,我不希望在从一页切换到另一页时使用任何后退按钮。
感谢任何人提供的任何帮助。
【问题讨论】:
听起来像UITabbarController
会更适合你而不是按钮来导航
听起来您并不了解视图控制器是什么以及您的选择是什么。我的讨论可能会对你有所帮助:apeth.com/iOSBook/ch19.html
【参考方案1】:
当我单击图库按钮时,它什么也不做……我没有使用导航控制器
嗯,这就是你的问题。您正在向 self.navigationController
发送消息,但它是 nil(因为正如您所说,您没有消息)所以什么也没有发生。
如果你不想要导航控制器,那么我建议使用presentViewController:...
;没有导航控制器就无法推送。
【讨论】:
是否可以添加编码以使新的视图控制器从左侧或右侧加载,而不是看起来好像从底部出现? 您可以获得一些其他动画选项,或者(在 iOS 7 中)您可以编写自己的自定义过渡动画并做任何您想做的事情。 我该怎么做呢?我对这一切的经验很少。 你看过我给你的网址了吗?教你这一切。 啊不,抱歉,我什至没有意识到这一点,但感谢我是一名 EE 专业的学生,在暑假期间尝试学习 iOS 编程作为一种爱好。有什么其他建议可以帮助我学习吗?以上是关于在视图控制器之间导航的按钮的主要内容,如果未能解决你的问题,请参考以下文章
Swift - 在 UIPageViewController 中的 3 个不同视图控制器之间导航按钮