草庐IT

UiViewController

全部标签

ios - 在没有 segues 的 View Controller 之间传递数据

我正在使用Storyboard,我有一个加载动态按钮的View。单击此按钮时,我需要加载第二个ViewController并传递数据。我不能使用segue作为它的动态按钮。我使用下面的代码加载第二个ViewControllerUIStoryboard*sb1=[UIStoryboardstoryboardWithName:@"MainStoryboard_iPhone"bundle:nil];UIViewController*vc1=[sb1instantiateViewControllerWithIdentifier:@"SecondViewController"];[self.na

ios - 在 UIViewController 中的何处设置属性

一个我不确定的相当基本的问题。我通常在viewDidLoad中设置我的UIViewController的View相关代码。如果Controller具有标签等的某些属性,我将在这里初始化它们并将它们添加到View中。这些属性通常在.m中声明,因此可以被视为伪私有(private)的。但是-如果Controller在其头文件中公开这些属性之一(比方说UILabel),我发现在设置它时我不能依赖它的存在向上。例如:CustomViewController*controller=[CustomViewControlleralloc]initWithNibName:nilbundle:nil];

ios - App结构 : UIView vs. 分页界面中的UIViewController

关于何时使用UIViewContoller与UIView,有一些很好的答案。例如here和here.一般要点是应该使用UIVIewController来控制全屏数据,因为它旨在处理旋转。因为onlythenewest一次屏幕上应该只有一个UIViewController将收到轮换发生的通知。为了忠于MVC范例,您的业务逻辑应该存在于UIViewController中,而只有显示和交互逻辑应该存在于UIView中。大概业务逻辑与整个屏幕上的内容有关。我的问题是,鉴于此,我如何构建一个在多个顶级View之间进行左右分页的应用程序?我想创建一个包含多个UITableView的界面,其中包含一

ios - 像 Google Analytics 一样在 UIViewController 上跟踪用户使用时间和时间

跟踪应用程序使用时间和用户在应用程序本身内查看屏幕(或与UIView交互)所花费的时间的最佳方法是什么?GoogleAnalytics似乎做得很好,但我想在应用程序本身内部使用这些数字来解锁应用程序的项目和区域。 最佳答案 您可能会基于CoreData推出自己的解决方案,或者如果您的数据很小,您甚至可以考虑使用NSDefaults。这是一个好的开始。它涉及拥有一个基本ViewController,您应该在每个要测量所花费时间的ViewController中继承它:@interfaceBaseViewController:UIView

ios - 禁用用户交互但允许在 UIViewController 中点击手势

我想在整个View上禁用用户交互,但也想在View上允许点击手势。假设主视图上方有一个菜单,如果用户再次点击主视图,后面的菜单就会消失。但是,只要显示菜单,就应禁用与主视图的所有其他交互。这是我尝试这样做的方法:我这样定义了tapGestureRecognizer:@interfaceGroupMasterViewController()@propertyNSMutableArray*groups;@property(nonatomic,strong)UITapGestureRecognizer*tapGestureRecognizer;@end在我的ViewDidLoad方法中我有这

ios - UIWindow 状态栏旋转

我有一个应用程序,其中有两个UIWindow实例的用例。第一个实例运行所有正常的应用程序交互,但我需要能够在没有用户交互的情况下,无论用户在应用程序中做什么,都能够在所有其他内容之上呈现一个ViewController。我让第二个窗口正常工作并且呈现良好。在这个ViewController中,我只支持纵向模式(虽然应用程序的其他部分支持横向)。我尝试在窗口的rootViewController中使用这些方法来阻止旋转:overridefuncsupportedInterfaceOrientations()->UIInterfaceOrientationMask{return[.Port

iphone - 如何切换 ViewController 而不是添加到堆栈?

我有许多对象在一个圆圈中相互链接。每个对象都持有对其邻居的引用,正方形和三角形是不同的类类型:这两个类,三角形和正方形,通过ViewController可见,并且它们通过segues相互链接。到目前为止,没问题。然而,当我在我的结构中四处浏览时,我一直在一个接一个地添加ViewController。这不仅在内存方面看起来是一种糟糕的做法,而且还带来了一个问题,即当我想退出这个结构时,我必须通过关闭我打开的所有ViewController来回溯。所以我正在寻找的是一种不在堆栈中的当前ViewController之上添加下一个ViewController的方法,而是用下一个ViewCont

ios - iPad 应用横向启动具有纵向尺寸的 Root View Controller

我设置了一个新的iPad项目,只支持UIInterfaceOrientationLandscapeRight。在我的AppDelegate中,我将RootViewController添加到窗口的rootViewController。在这个UIViewController(RootViewController)中,我有以下内容:-(BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation{return(interfaceOrientation==UIInterfaceO

ios - 多个 ViewController(containerView?childView?viewController 的实例?)

我需要在另一个View之上添加一个新View(带ViewController)。用户与这个新View交互了一段时间,然后我想将其删除。在旧版本的Xcode中,我可以将其添加为subview。我现在收到EXC_BAD_ACCESS错误。我不想将添加的View作为模式。我需要通过添加的View查看原始背景。我已经阅读了很多关于新的自定义containerViews、addChildView和presentView的内容。我看不出这些是明确的答案。这是以前有效的旧代码-主ViewController中的操作:-(IBAction)showWhiteView:(id)sender{WhiteV

ios - Cocos2d-iphone - Sphero 集成

我正在尝试将Sphero连接到我正在构建的Cocos2d游戏。Sphero有一些好东西documentation和示例,我可以运行示例代码。我从一个cocos2d项目开始,并添加了Sphero框架。我无法获得对球的基本指挥。我认为问题出在这个函数中:-(void)setupRobotConnection{/*Trytoconnecttotherobot*/[[NSNotificationCenterdefaultCenter]addObserver:selfselector:@selector(handleRobotOnline)name:RKDeviceConnectionOnlin