问题标签 [rootview]

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 投票
2 回答
4080 浏览

android - findViewById(android.R.id.content).getRootView() nullPointerException

为什么findViewById(android.R.id.content).getRootView()在 onPause 或 onStop 中调用会返回 NPE,但在 onCreate 中调用时不会返回?

0 投票
0 回答
62 浏览

ios - 加载新视图后ios视图仍然存在

当我设置一个新的 rootViewController 时:

我仍然可以用我刚刚离开的视图做一些事情。

例如,当我离开我的主页视图时,左上方有一个注销按钮,在联系人视图上我仍然可以单击注销按钮,即使它不可见。

这只发生在 iPhone5 上。

此外,当我附加新视图时,似乎没有回收内存。当我在联系人和主屏幕之间来回切换时,内存使用量只会增加。

我有几次泄漏,但我把它们修好了。现在我无法弄清楚为什么内存使用量只会上升。我可以“模拟内存警告”,它可能让我回来 0.25MB,但它远没有我第一次加载它并且只使用一两个视图时那么低。

我正在使用 ARC。我的视图控制器在我的 appdelegate 中定义如下:

有任何想法吗?

0 投票
1 回答
861 浏览

ios - performSegueWithIdentifier 和 rootViewController 的问题

我使用这行代码来执行 segue

[self.window.rootViewController performSegueWithIdentifier:@"viewMessage" sender:self];

但是由于我调用rootViewController它试图viewMessage在我的标识符中查找标识符,loginViewController当我需要它在其中查找它时,friendsListTableViewController我尝试声明[self performSegueWithIdentifier:@"viewMessage" sender:self];但我有两个@implementationsself一直识别为JBSlidingTableViewCell1,并且由于它是 UITableView,因此它不识别performSeguqWithIdentifier我尝试过的[friendsListTableViewController performSegueWithIdentifier:@"viewMessage" sender:self];但所有我得到的是 performSegueWithIdentifier 不是该类的一部分,而实际上它是一个 UIViewController ...

我尽量避免发布代码,因为它也有很多,但我只是想看看是否有办法强制performSeguqWithIdentifier指向我的friendsListTableViewController而不是我的loginViewController

0 投票
4 回答
4728 浏览

ios - 使用 SWRevealViewController 登录视图

目前,我有一个项目,我想将登录视图与 SideBarRevealController 集成。

这是 SideBarRevealController 的链接:https ://github.com/John-Lluch/SWRevealViewController

我目前在呈现标准 UIViewController 的登录视图时遇到问题。

链接中有 3 个示例项目,但我将坚持第一个,用于 IOS。我在理解哪个视图控制器(SWRevealViewController 或我的登录视图控制器)应该是根视图控制器时遇到问题?

我认为 SWRevealViewController 应该是 rootviewcontroller,但我不完全确定。

我想我对如何使用登录视图和主视图设计应用程序流程的理解已经关闭.....

但是如果可能的话,我将如何允许在包含多个视图控制器的 SWREVEALVIEWCONTROLLER 类之前显示登录视图?

如果有任何问题或疑虑,请参阅链接并运行示例项目。我认为这对于想要使用侧边栏导航器功能的登录视图的每个人来说都是一个问题。

谢谢你的堆栈溢出!!!

0 投票
3 回答
32341 浏览

ios - How to change RootViewController in AppDelegate From Other ViewController?

This is didFinishLaunchingWithOptions Method in AppDelegate. Let me explain scenario, I have developed sideMenu like facebook in my app, but now I have to change the sideMenu list according to screens (ViewController)

Here the side Menu is SideMenuViewController, which is an argument in contain, which ultimately becomes window's rootViewController.

SO, The very basic question arises is "How to change the controller or variable which becomes rootViewController of windows"

If any programmer wants to know more code or requirement, I do welcome to provide by editing my code or in comments.

0 投票
5 回答
13922 浏览

ios - 更改 UIWindow 的 rootViewController

当我的应用首次加载时,我将rootViewControllermy 的属性设置UIWindowcontrollerA.

在我的应用程序中的某个时候,我选择rootViewControllercontrollerB.

问题是,有时当我在 中进行翻转过渡时controllerB,我会看到controllerA's 背后的视图。由于某种原因,该视图没有被删除。更令人担忧的是,在设置rootViewControllerto之后controllerBcontrollerA'sdealloc方法永远不会被触发。

我已经尝试UIWindow在切换到 之前手动删除 的子视图controllerB,这解决了controllerA在后台查看视图但controllerA仍然从未调用的 dealloc 的问题。这里发生了什么????

苹果文档说:

根视图控制器提供窗口的内容视图。将视图控制器分配给此属性(以编程方式或使用 Interface Builder)将视图控制器的视图安装为窗口的内容视图。如果窗口具有现有的视图层次结构,则在安装新视图之前删除旧视图。

更新

这是我的 AppDelegate 的代码:

0 投票
3 回答
9519 浏览

ios - 在 iOS 应用程序中采用侧边菜单。查看控制器结构问题

我正在设计一个旨在具有以下导航结构的应用程序:我需要一个带有“注册”和“登录”按钮的欢迎视图,因为大多数应用程序都有:

iPhone_欢迎

此视图不显示任何导航栏,因为它似乎很常见。如果点击“登录”,则登录视图将以模态方式呈现:

iPhone_signIn

如果点击“注册”,欢迎视图会导航到请求用户输入以创建帐户的表单:

iPhone_signUp

然后,一旦用户登录并进入应用程序,我希望它具有类似于 Facebook、YouTube 或 Spotify 的侧边菜单:

iPhone_facebook

作为中央面板 a UINavigationController. 左侧面板我认为它通常是一个'UIViewController'......

关键是,我不知道rootViewController我的应用程序应该是什么,以及我应该拥有什么样的视图控制器层次结构。我想过几种可能:

1)作为rootViewController一个UINavigationController,推送隐藏导航栏的欢迎视图(这可能吗?),如果需要显示“登录”视图或推送“注册”视图。用户登录后,从 中弹出这些视图rootViewController,即 a UINavigationController,然后将此类导航控制器推入管理侧边菜单内容的自定义视图控制器。

2)作为rootViewController侧边菜单自定义视图控制器,并将其设置为中央面板UINavigationController。将欢迎视图推到那里,等等,而不为左/右面板设置任何视图控制器,然后当用户登录时,从中央面板弹出这些视图UINavigationController,将相应的视图推到那里,现在设置左/右面板

我希望我已经解释了自己。也许还有另一种更好的方法来处理这种情况。有人实现了这样的应用程序吗?我需要有关此问题的帮助,并且我会很高兴被推荐一个自定义库/控件,该库/控件提供使用过的人提供的侧边菜单内容,并且易于使用和自定义。我知道它们有很多(例如MMDrawerControllerJASidePanels),但我想听听与其中一个开发应用程序的人的一些意见。

注意:我也需要支持 iPad 和 iOS 5+

非常感谢

0 投票
1 回答
664 浏览

ios - UIWindow 的 rootViewController 注意事项

我一直在阅读有关切换rootViewController窗口的几篇文章,有时有人说rootViewController在整个应用程序的生命周期中保持相同比切换它更好,而其他帖子与rootViewController在应用程序的某个时间点更改有关。我对此感到困惑,并且在 Apple 的文档中找不到关于这一点的任何建议。

当您的应用程序中可能有不同的内容视图控制器时,最佳实践应该是什么?例如,假设您有一个选项卡式应用程序 ( UITabBarController),您希望首先显示登录或注册 ( UINavigationController) 的欢迎视图:

1) 使用固定的方法rootViewController。我认为您应该将 设置UITabBarControllerrootViewController,因为应用程序的核心是选项卡,但如果需要用户凭据,则UINavigationController在 中设置 a UITabBarController,隐藏选项卡栏,以推送欢迎视图并导航到登录/注册视图控制器。

2)接近切换rootViewController。首先,如果需要用户凭据,将 设置UINavigationControllerrootViewController以显示欢迎视图并导航到登录/注册,一旦成功提供用户凭据或成功创建帐户,切换rootViewControllerUITabBarController以显示核心选项卡式应用程序。

如果最好的通用方法是根据需要进行切换rootViewController,您会考虑哪些内存管理注意事项?我是否需要strong在 AppDelegate (UITabBarControllerUINavigationController) 中有两个属性?切换时视图控制器之间的过渡又如何rootViewController:它是平滑的,还是应该为它设置动画?

提前致谢

0 投票
2 回答
1034 浏览

android - 获取根视图有什么区别?

这两者有什么区别:

0 投票
1 回答
2712 浏览

ios - iOS 切换 rootViewController 不起作用

我有一个登录视图,用于检查是否有默认设置,然后同步数据。如果没有默认设置,视图会等待用户登录。如果有设置并且数据同步正确,它应该切换到我的拆分视图。

如果用户输入他们的登录信息,该代码将起作用。它同步数据,然后切换视图。如果用户已经登录,它会点击该功能并且不会切换视图。

这是两条路径调用的代码:

如果用户已经登录过一次,“Redirect@”会显示在初始加载的日志中。我已经确认没有同步错误,它达到了功能但不执行切换。

我正在从带有导航控制器的标准视图移动到拆分视图,所以我不能使用手动 segue 触发器。