问题标签 [navigationcontroller]

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 回答
290 浏览

iphone - 两个导航视图之间的 UITextView 的内容处理

我有一个视图,它有一个表格单元格和一个保存按钮。

如果我触摸表格单元格,一个新的导航视图会滑入(视图 b)。在视图 b 中,我有一个 UITextView,我在其中键入了所有需要保存的上下文。当然,“视图 b”的左上角还有“返回”按钮。

'view a' 有一个保存按钮,它希望从我输入的'view b' 中保存 textView 的内容。保存是在 'view a' 而不是 'view b' 上完成的,因为实际上还有其他信息需要保存'view a' 也是如此。

为此,当我在“视图 b”的 textView 中键入内容并返回“视图 a”(后退按钮或完成按钮)时,文本视图中的内容应该以某种方式传递回'查看a'以便在我按下保存按钮时保存。

我应该怎么做?(我花了将近一整天的时间来解决这个问题..)

到目前为止我在想.. ?? = self.textView.text; 在 viewWillDisappear 在“视图 b”中

非常感谢。

0 投票
1 回答
296 浏览

objective-c - 在 iPhone SDK 中刷新 UIView 需要帮助

我有一个简单的向下钻取导航应用程序。在详细视图中,我绘制了几个 20x20 大小的 UIImage,具体取决于导航项中选择的行。These images are drawn as subviews over the detail view when a row is selected.Now when I get to the "detail view" I have set up a couple of buttons, which when pressed, will rearrange the small images. 为此,我需要清除以前的图像并在视图的不同位置重新绘制它们。我有一个类似的方法: [MyView changeImagePositionwithPosnumber:"number selected by buttons"] 当按钮被按下时我不能通过这个方法,因为它会覆盖现有的图像。如何刷新视图以通过此方法?我需要为此实施绘制矩形吗?我不太了解drawrect,也不知道如何实现它。简而言之,当您离开详细视图时,无论导航控制器做什么,我都想做,所以我可以刷新我的视图并在其上绘制新图像。非常感谢您对此的任何帮助。我还是个新手。

0 投票
1 回答
304 浏览

flip - 后退按钮一直到根视图,因为我添加了一个翻转

我有一个根视图和几个子视图。对于每个视图,我都有一个信息按钮,它会导致视图翻转以显示信息屏幕。我的问题是,当我使用后退按钮向后翻转时,它不会将我带到我离开的屏幕 - 它会将我带回根视图。在我完成添加翻转而不是通常的推动的所有工作之前,这很好!

在一个视图控制器(我称之为detailViewController)中,它是层次结构的3页:

在那个 infoViewController 中:

它不会让我回到“detailViewController”。它带我回到第一个打开的屏幕视图。

顺便说一句,在信息屏幕的导航栏中,后退按钮被正确标记为 detailViewController 标题,而不是根视图标题,即使点击后退按钮不会将您带到它所说的位置!请帮助...谢谢!

0 投票
2 回答
55 浏览

iphone - UINavigationContlrol 不弹出视图

我知道关于它的问题很少,但没有一个得到回答。

我的应用程序中有一个导航控制器。推送视图正常工作。按下后,后退按钮也是可见的,但是当我按下后退按钮时,它不会弹出视图,只会将导航栏的视图更改为预览的视图导航栏。

希望现在有人有答案。

提前致谢。

0 投票
1 回答
705 浏览

iphone - iPhone 导航控制器 - 重用视图的最佳实践

嗨,我在我的应用程序中经常使用导航控制器,但我的应用程序开始遭受视图一遍又一遍地调用相同视图并将它们推送到导航控制器堆栈而不是重用堆栈上的现有视图的问题。

例如,我有一个在我的应用程序的不同位置调用的地图视图。

我真的应该通过导航控制器堆栈并找到我已经推送的地图视图并将其移动到堆栈的顶部。

相反,我创建了一个新的并将其推到顶部。

随着我的应用程序变得越来越复杂,我肯定会遇到内存问题,用户会厌倦点击后退按钮进入主菜单。

任何人都有在导航控制器堆栈中找到视图的好例子。

我该怎么做?

我是否需要在 App Delegate 中保留指向我的地图视图的指针?

如果有办法在堆栈中快速找到视图,或者我是否需要将索引/NSDictionary 保存到它们的某个位置。

我注意到现在编写 Facebook 应用程序的人也遇到了同样的问题。当通知进来时,他们打开应用程序并实例化通知视图并将其推送到堆栈上。一段时间后,您最终会关闭一大堆旧通知窗口以返回主菜单。干杯

0 投票
1 回答
715 浏览

objective-c - UIToolbar 内存泄漏

目前我有一个基于导航的应用程序,显然 RootViewController 是一个 UITableView。但是,我认为有必要创建一个浮动在 UITableView 上方的 UIToolbar。目前我这样做是这样的。

但是,在使用 Leaks 工具工具后,我能够确定这是导致一些内存泄漏的原因,虽然很小,但仍然存在内存泄漏。然后,我进一步深入研究,能够查明导致内存泄漏的确切行。他们是以下。

我正在努力弄清楚如何消除这些内存泄漏,从而使我的应用程序运行更顺畅。任何帮助将不胜感激以上行导致泄漏的原因!

0 投票
1 回答
1606 浏览

iphone - 自定义 navigationController.navigationBar.barStyle 的问题

我通读了整个论坛也许我做错了什么任何帮助都会很棒

tabController = [[UITabBarController alloc] init]; tabController.delegate = self; [tabController setViewControllers: [NSArray arrayWithObjects: //[[[UINavigationController alloc] initWithRootViewController:[[[SearchTableViewController alloc] init] autorelease]] autorelease], //[[[UINavigationController alloc] initWithRootViewController:[[[SearchPhotosViewController alloc] init] autorelease]] autorelease], //[[[UINavigationController alloc] initWithRootViewController:[[[SearchPhotosViewController alloc] init] autorelease]] autorelease], //[[[UINavigationController alloc] initWithRootViewController:[[[SearchPhotosViewController2 alloc] init] autorelease] ] autorelease], [[[UINavigationController alloc] initWithRootViewController:[[[crap2 alloc] init] autorelease]] autorelease], [[[UINavigationController alloc] initWithRootViewController:[[[crap3 alloc] init] autorelease]] autorelease], [[[UINavigationController alloc] initWithRootViewController:[[[crap alloc] init] autorelease]] autorelease], nil]]; //tabController.navigationController.navigationBar.barStyle = UIBarStyleBlackTranslucent;

//tabController.navigationController.navigationBar.barStyle = UIBarStyleBlack; //tabController.navigationController.navigationBar.barStyle = UIBarStyleBlackOpaque; //tabController.navigationController.navigationBar.barStyle = UIBarStyleBlackTranslucent; tabController.navigationController.navigationBar.barStyle = UIBarStyleBlack; [窗口添加子视图:[tabController 视图]];

0 投票
2 回答
7402 浏览

core-data - 'NSInternalInconsistencyException',原因:'+entityForName:找不到实体名称的 NSManagedObjectModel

我有一个基于窗口的应用程序,其中集成了标签栏和导航栏。导航栏上有一个自定义按钮,可以打开表格视图。

单击表格的单元格时,我想打开一个新的表格视图控制器。但是,一旦我单击第一个表格的单元格,我就会得到一个异常

我已经检查过AddForm它在正确的位置。

我已经尝试了上面和其他线程上给出的所有解决方案,但仍然卡住了。我希望有一个人可以帮助我。

流程是这样的

ListButton(点击打开一个列表视图)->一个表格视图打开->(点击一个单元格应该打开一个新的表格视图控制器并从核心数据中获取数据)

我的根视图控制器代码在第二个表视图控制器文件中……那是我做错了吗?我这样做是因为在那之前我不需要核心数据......

请帮忙

提前致谢

0 投票
1 回答
1075 浏览

iphone - 在标签栏应用程序中重置以前的导航控制器

我有一个标签栏应用程序,里面有一个导航控制器和视图控制器。这就是它的布局方式。

我想要做的是当我导航到选项卡栏 1 中的其他视图控制器,然后我切换到选项卡栏 2,我希望选项卡栏 1 返回其根视图控制器。

我正在寻找的行为类似于 iPod 应用程序。任何帮助表示赞赏。谢谢!

0 投票
2 回答
1527 浏览

iphone - Iphone 中的 NavigationController / TableView 内存泄漏

最近我完成了我的第一个 Iphone 应用程序,它运行良好....除了当我使用仪器进行紧张的会话后一段时间没有泄漏时发现泄漏,突然获得大约 1.3Kb 的价值。在堆栈跟踪中,它们都指向我在将 UIViewControler 推送到导航控制器后释放它的确切行(我将把这段代码贴得更远一点)。几次浏览 ViewControlers 并再次返回后,泄漏似乎发生了。我知道这是一个非常普遍的问题,但我希望有人能指出我正确的方向。我花了几天时间试图解决这个问题,它开始让我发疯!

我的应用程序是基于导航的应用程序,简而言之,它的工作原理如下:

从 UIViewControler 开始,当按下按钮时,它会转到另一个包含 TableView 的 UIViewControler。从这里根据填充 TableView 的数组的内容,它可以转到包含 PickerView 的 UIViewControler,然后转到最后一个 UIViewControler,或者直接转到最后一个 UIViewControler,绕过带有 PickerView 的那个。

这是堆栈跟踪显示泄漏已打开的代码:

NavigationController 现在不应该负责这个 UIViewcontroler 吗?我没有在其他任何地方调用第三个保留,它只存在于这个函数中。

我有一堆来自 UIkit 和 QuartsZone 的泄漏。我有其中一些的屏幕截图,在堆栈跟踪中都指向相同的代码片段,在同一个函数中,在同一个对象中,如上所述,在跟踪中的某个点:

这是图片的链接,因为我还不能发布图片:链接不再有效

这是列表中第一个 GeneralBlock-16 的完整堆栈跟踪。粗体字(第 29 行)是上面的代码片段:


0 libSystem.B.dylib malloc

1 核心基础-[__NSArrayM insertObject:atIndex:]

2 核心基础-[__NSArrayM addObject:]

3 UIKit-[UIView(UIViewGestures) addGestureRecognizer:]

4 UIKit-[UISwitch_commonInit]

5 UIKit-[UISwitch initWithCoder:]

6 UIKit UINibDecoderDecodeObjectForValue

7 UIKit UINibDecoderDecodeObjectForValue

8 UIKit-[UINibDecoder decodeObjectForKey:]

9 UIKit-[UIView initWithCoder:]

10 UIKit UINibDecoderDecodeObjectForValue

11 UIKit-[UINibDecoder decodeObjectForKey:]

12 UIKit-[UIRuntimeConnection initWithCoder:]

13 UIKit UINibDecoderDecodeObjectForValue

14 UIKit UINibDecoderDecodeObjectForValue

15 UIKit-[UINibDecoder decodeObjectForKey:]

16 UIKit -[UINib 实例化WithOwner:选项:]

17 UIKit-[NSBundle(UISBundleAdditions) loadNibNamed:owner:options:]

18 UIKit-[UIViewController _loadViewFromNibNamed:bundle:]

19 UIKit-[UIViewController 加载视图]

20 UIKit-[UIViewController 视图]

21 UIKit-[UIViewController 内容滚动视图]

22 UIKit-[UINavigationController _computeAndApplyScrollContentInsetDeltaForViewController:]

23 UIKit-[UINavigationController_layoutViewController:]

24 UIKit-[UINavigationController_startTransition:fromViewController:toViewController:]

25 UIKit-[UINavigationController _startDeferredTransitionIfNeeded]

26 UIKit-[UINavigationController pushViewController:transition:forceImmediate:]

27 UIKit 0x6ea9b5

28 UIKit-[UINavigationController pushViewController:animated:]

29 诱杀陷阱-[SelectEventTypeviewcontroler ChooseThisOne] /Users/chriswyllie/Documents/Booby Trap/Booby Trap/Classes/SelectEventTypeviewcontroler.m:91

30 核心基础-[NSObject(NSObject) performSelector:withObject:withObject:]

31 UIKit-[UIApplication sendAction:to:from:forEvent:]

32 UIKit-[UIApplication sendAction:toTarget:fromSender:forEvent:]

33 UIKit-[UIControl sendAction:to:forEvent:]

34 UIKit-[UIControl(内部)_sendActionsForEvents:withEvent:]

35 UIKit-[UIControl touchesEnded:withEvent:]

36 UIKit-[UIWindow_sendTouchesForEvent:]

37 UIKit-[UIWindow 发送事件:]

38 UIKit-[UIApplication 发送事件:]

39 UIKit_UIApplicationHandleEvent

40 图形服务 PurpleEventCallback

41核心基础 CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION

42 核心基础 __CFRunLoopDoSource1

43 核心基础 __CFRunLoopRun

44 CoreFoundation CFRunLoopRunSpecific

45 核心基础 CFRunLoopRunInMode

46 图形服务 GSEventRunModal

47 图形服务 GSEventRun

48 UIKit-[UIApplication_run]

49 UIKit UIApplicationMain

50 诱杀装置主 /Users/chriswyllie/Documents/Booby Trap/Booby Trap/main.m:14

51 陷阱开始


提前感谢您的帮助,我希望我只是在做一些愚蠢的事情,我需要一双新的眼睛才能看到它。如果您需要更多信息,请告诉我。