Tag: uiviewcontroller

UIViewControllerHierarchyInconsistency当试图呈现一个模态视图控制器

尝试用下面的代码展示一个模态视图控制器 MapViewController *mapView = [[MapViewController alloc] initWithNibName:@"MapViewController" bundle:nil]; mapView.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal; [self.navigationController presentModalViewController:mapView animated:YES]; [mapView release]; 继续收到以下错误 'UIViewControllerHierarchyInconsistency', reason: 'A view can only be associated with at most one view controller at a time! View <UIView: 0x1ed815a0; frame = (0 20; 320 460); autoresize = W+H; layer = <CALayer: 0x1ed81600>> is associated with <UIViewController: 0x1ed835a0>. […]

在自UIViewController调用的非保留完成中引用self时,weakSelf / strongSelf舞真的有必要吗?

说我在UIViewController子类中有以下方法: – (void)makeAsyncNetworkCall { [self.networkService performAsyncNetworkCallWithCompletion:^{ dispatch_async(dispatch_get_main_queue(), ^{ [self.activityIndicatorView stopAnimating]; } }); }]; } 我知道块内的self引用导致UIViewController实例被块保留。 只要performAsyncNetworkCallWithCompletion不会将该块存储在我的NetworkService的属性(或ivar)上,我是否认为没有保留周期? 我意识到上面的这个结构将导致UIViewController被保留,直到performAsyncNetworkCallWithCompletion完成,即使它是由系统提前发布的。 但它可能(甚至可能?)系统将释放我的UIViewController 在所有 ( iOS 6pipe理UIViewController的支持CALayer内存的方式更改后 )? 如果有一个原因,我必须做的“自我/自我舞蹈”,看起来是这样的: – (void)makeAsyncNetworkCall { __weak typeof(self) weakSelf = self; [self.networkService performAsyncNetworkCallWithCompletion:^{ typeof(weakSelf) strongSelf = weakSelf; if (!strongSelf) { return; } dispatch_async(dispatch_get_main_queue(), ^{ [strongSelf.activityIndicatorView stopAnimating]; } }); }]; } 但是我觉得这很丑陋,如果没有必要,我想避免它。

如何在iOS中使用“容器视图”?

我注意到了XCode中的UI组件: Container View 。 基于提供的描述,我想利用它来在几个不同的屏幕上显示我的应用程序的可重用组件。 我一直在网上查找尝试find一个基本的教程或一些文件,但我没有发现任何使用。 请有人build议如何连接并使用它? 目前看来, container view似乎没有resize,这是有问题的。 任何提示如何启用此将不胜感激。 干杯。

Swift,UIView控制器中的触摸事件

我怎样才能添加UIView触摸操作或touchend动作编程的Xcode不是从Main.storyboard提供?

在另一个视图控制器中添加视图控制器作为子视图

我发现这个问题很less的post,但没有一个解决了我的问题。 像我一样说 ViewControllerA ViewControllerB 我试图在ViewControllerA中添加ViewControllerB作为一个子视图,但是,它抛出了一个错误,如“ fatal error: unexpectedly found nil while unwrapping an Optional value ”。 以下是代码… ViewControllerA var testVC: ViewControllerB = ViewControllerB(); override func viewDidLoad() { super.viewDidLoad() self.testVC.view.frame = CGRectMake(0, 0, 350, 450); self.view.addSubview(testVC.view); // Do any additional setup after loading the view. } ViewControllerB只是一个带有标签的简单屏幕。 ViewControllerB @IBOutlet weak var test: UILabel! override func viewDidLoad() […]

容器视图被推下来,就像它有一个UINavigationBar?

我有一个容器视图的UIViewController。 这个容器视图包含一个UITableViewController。 UIViewControllerembedded在UINavigationController中。 我通过更改色调颜色,条形色彩和标题文本属性来configurationNavigationBar,但是当我尝试更改半透明性时,我遇到了问题。 我已经通过删除所有其他自定义代码来单独解决问题。 每当我在UIViewController的-viewDidLoad这样做: self.navigationController.navigationBar.translucent = NO; 容器视图在其本身上增加了一些空间,就好像它有自己的导航栏一样。 每当我将半透明设置为YES,视图将正确显示所有内容。 这只发生在一个包含的视图,每当我设置半透明的NO。 有什么我在这里失踪? 我试图将半透明设置为YES ,并将其设置为隐藏,但没有任何工作。 是不知何故,包含的视图inheritance父容器的属性? 当我将半透明设置为NO时,如何避免在包含视图上创build的额外空间? 我认为设置半透明只会影响半透明性,而不是影响观点的位置。 半透明= YES时 +———————————+ | | | UINavigationBar | | | +———————————+ | | | | | | | | | | | UITableViewController | | in a Contained View | | | | | | | | […]

IOS7状态栏隐藏/显示在select的控制器上

我想在一些控制器上显示并隐藏状态栏。 这可以做到或者是更多的一个整体的应用程序设置。 我见过许多关于plist更新的post/问题: View controller-based status bar appearance – NO 如果这完成了什么控制然后给予? 我正在寻找在应用程序的主屏幕上显示状态栏。 但是,例如在一个侧面(幻灯片)菜单,我希望它不显示,这是可能的吗? 这可以在IB或代码中更改吗? 编辑 – 我正在使用https://github.com/edgecase/ECSlidingViewController实现。 主控制器(显示第一页)应显示状态栏,但左侧菜单控制器不应滑动。 我相信问题是他们都坐在同一个根控制器(滑动视图控制器),所以很难完成。 理想情况下,如果主屏幕(主页面)可能会带状态栏,当它幻灯片看起来最好。

如何在视图控制器中以编程方式切换视图? (Xcode,iPhone)

有一段时间一直在挣扎,似乎永远不能得到直接的答案。 任何帮助表示赞赏!

使用UIViewControllerInteractiveTransitioning实现自定义UIViewController交互转换的正确方法委托协议

我感兴趣的是如何创build一个实现UIViewControllerInteractiveTransitioning协议来pipe理两个UIViewController之间的自定义交互转换的NSObject子类的简洁示例。 理想情况下,响应滑动手势。 类似于iOS7的默认交互式滑动,现在与UINavigationController ,但是这是一个自定义/手动实现的例子。 我已阅读文档: UIViewControllerContextTransitioning UIPercentDrivenInteractiveTransition UIViewControllerInteractiveTransitioning UIViewControllerAnimatedTransitioning 并在其他地方看了几个例子: 一 二 三 四 (我设置了这个,但它更多的是关于UIViewController containment和手动实现这些转换,而不是UIViewControllerInteractiveTransitioning 文档相当清楚,但不参考示例代码。 而且这些例子还有一些不足之处(关于各个部分是如何连接在一起的未解答的问题)。 所以我的问题是: 有人可以帮助填补关于如何将手势(例如滑动)绑定到实现UIViewControllerInteractiveTransitioning协议的对象的空白吗? 实现UIViewControllerInteractiveTransitioning协议的对象与实现UIViewControllerAnimatedTransitioning协议的对象之间有什么关系? 似乎你必须同时触发交互转换… 提前致谢…

iOS viewDidLoad for UIView

在ViewController中,有ViewDidLoad知道VC何时加载。 对于一个UIView,当视图加载时,我必须使用什么方法? 这个方法是否会被任何init调用? 编辑:没有XIB,只是以编程方式。