问题标签 [parentviewcontroller]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1135 浏览

iphone - UINavigationController 嵌套在 moreViewController 中的问题

我有包含一些 UINavigationControllers 的 UITabbarMoreController。这些 UINavigationControllers 然后包含我的自定义视图控制器。

所以层次结构看起来像这样:

从我的自定义视图控制器中,我调用[self parentViewController]它应该返回一个 UINavigationController。这确实发生了,我确实得到了一个 UINavigationController,但只有当特定的 UINavigationController 不在 moreNavigationController 中时。

由于我在 tabbar 控制器中有很多子控制器,所以 tabbar 控制器创建了一个 moreNavigationController。如果我打开 moreNavigationController 下的视图控制器并调用[self parentViewController]它,则会返回一个带有 UIMoreNavigationController 类的神秘对象

我真的需要获取作为我的视图控制器的父级的 UINavigationController,而不是 UIMoreNavigationController。另外,我尝试使用[self navigationController]相同的结果。如何获得对我的视图控制器真正最近的父级的引用?提前感谢您的帮助!

0 投票
1 回答
4939 浏览

ios - 在 Phonegap 中获取当前 UIViewController

我正在通过 PhoneGap 插件加载应用程序(通过嵌入式框架)。
现在,我试图将当前 UIViewController 传递给FlashizFacade对象的parentViewController属性。 当我执行我的应用程序时,我在分配self时在调试控制台中收到此错误:

2012-09-10 13:01:43.663 gTicketSales[2805:16a03]-[FlashizPlugin navigationController]:无法识别的选择器发送到实例 0x91925e0

2012-09-10 13:01:43.665 gTicketSales[2805:16a03] ***WebKit 在 webView:decidePolicyForNavigationAction:request:frame:decisionListener:delegate: <NSInvalidArgumentException>-[FlashizPlugin navigationController]: 发送到实例 0x91925e0 的无法识别的选择器中丢弃了一个未捕获的异常

分配self.viewController时:

2012-09-10 14:31:21.455 gTicketSales[3693:16a03] ***WebKit 在 webView:decidePolicyForNavigationAction:request:frame:decisionListener:delegate 中丢弃了一个未捕获的异常:<Wrong parentViewController specified>使用非模态显示时,parentViewController 必须是分配了有效导航控制器的 UIViewController 实例

我试过了:

我的 .h 文件

我的 .m 文件

提前致谢!

0 投票
1 回答
168 浏览

iphone - How to call presentModalViewController from ParentViewController Method in paging app

I'm using a Page App. I have a viewController A and this have a scrollView with 3 others viewController lets call them ViewController B,C,D and I switch controllers B,C,D using scroller's paging. My problem is: I want to call presentModalViewController from a button in ViewController B but when I do this in ViewControllerB.m

It works and cover only B's view but I still can switch between E,C,D. I don't want this. I want to call this method from parent ViewController A, because when I call ViewController E, I want to make paging off.

I tried:

But didn't work.

Anyone can help me please?

0 投票
1 回答
106 浏览

ios - iOS 在关闭时从 MPMoviePlayerViewController 调用父视图控制器中的 void

当被解雇时,如何在 MPMoviePlayerViewCotroller 的 parentViewController 中调用自定义 -(void)?

0 投票
1 回答
106 浏览

ios - 访问父视图控制器的父视图

我有一个 Viewcontroller A,我添加了一个 Viewcontroller B 作为子视图。B有很多childviewcontroller C,D,E。C,D,E 是 3 个 UItableViewcontroller。这就是我正在尝试的,当按下 C、D 或 E 的 UitableViewcells 时,我想从 A 切换到另一个视图控制器 F。

第一个问题:这是最好的方法吗?

你能帮忙吗?

0 投票
1 回答
233 浏览

objective-c - How the correct way to change the actual view controller? On loaded view parent, presented and presentingViewController are null

I have the following structure on my iOS iPad app:

  • RootViewController: Login
    • @property UITabbar *main (which is loaded after login with success);

On appDelegate I have two properties: window and login. On the first one I load the UIWindow and on other LoginViewController (UIViewController). And set Login as RootViewController.

On Login I have a property named "main" typed as MainController (extends UITabbarController).

After the successfull login I use the code above to load main:

MainController was loaded in the viewDidLoad method. I have two points:

I need to set self as delegate of MainController?

This is the begin of my MainController viewDidLoad method:

The log of this is:

Am I using the correct way to present a viewController? Or to show a view after I click on a button or login? What is missing? Am I using correctly the view hierarchy?

Exists the need of a property to contain the controller which will be presented?

I appreciate since now!

0 投票
3 回答
9888 浏览

ios - 可可:无法删除子视图控制器

我加载我的主视图控制器的视图。这个主视图控制器然后添加 2 个子视图控制器(拆分视图:主视图和细节)。当我在 init 方法中添加子 VC 后立即记录它们的数量时,我得到“2”作为输出。然后当我调用 -switchToCommunication 方法并尝试删除详细子 VC 时,视图不会改变。但日志告诉我,该阵列实际上已从 2 个子 VC 缩减为 1 个。

怎么了?

0 投票
2 回答
640 浏览

ios - iOS 访问 parentViewController 以更改 UIButton 的状态 setSelected:YES

我在 MainViewController 中有一个 UIButton。
MainViewController 有一个 childViewContoller。

我需要从 childViewController 访问 MainViewController 中的 UIButton (tcButton) 属性,并在 viewDidLoad 中将其设置为 setSelected:YES。我的 ChildViewController.m 文件中有以下代码,但它不起作用。

0 投票
1 回答
3514 浏览

ios - iOS 访问 parentViewController 中的属性

尝试访问 parentViewController 中的方法时,我的应用程序崩溃。这是 StoryBoard 中的布局

在此处输入图像描述

MainViewController = STLMMainViewController (ParentViewController)

Scene1 = STLMTimeDateViewController (ChildViewController)

这是 STLMTimeDateViewController 的代码

应用程序运行,但调用 STLMMainViewController 时,应用程序崩溃并出现以下错误:

如果我删除以下行:

然后离开

应用程序运行,没有错误,但 [STLMMainViewController locationButtonSelected] 中的以下方法没有被调用(我从未看到日志):

locationButtonSelected 方法中的所有属性和方法本身都在 STLMMainViewController 的 .h 中声明,以供公共访问。

谢谢

0 投票
3 回答
8072 浏览

ios - 容器视图控制器 - 通知父操作

假设我有一个自定义容器视图控制器 (MainViewController),我在其中执行以下操作:

HomeViewController 将有一个按钮,例如“go”,当按下该按钮时需要前进到下一个视图控制器。所以我需要通知 MainViewController 这个动作。做这个的最好方式是什么?

我正在使用自定义容器,因为我需要在视图控制器之间进行自定义转换。当按下“go”时,HomeViewController 上的一些视图将动画,而来自新视图控制器的视图正在动画到位。

显然,我可以给 HomeViewController 一个 MainViewController 类型的属性并以这种方式进行调用,但我希望容器视图控制器 API 有一种更简洁的方式。