问题标签 [containment]

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

ios - Dealloc 在 UIViewController 上调用,这些 UIViewController 存储在 NSMutableDictionary 中并由 UIViewControllerContainment 呈现

我用 Storyboards/Segues 和 UIViewController 容器构建了一个自定义的 UITabBarController。这是一个链接:https ://github.com/mhaddl/MHCustomTabBarController

将由 Container 呈现的 UIViewController 存储在 NSMutableDictionary 中(键是 segue 的标识符)。一切正常,直到我回到之前介绍的 ViewController 为止。此时“dealloc”在这个 ViewController 被呈现之前被调用。

如何防止“dealloc”被调用,以便它可以用于取消订阅通知和 nil 委托。

MHCustomTabBarController:

MHTabBarSegue:

0 投票
0 回答
197 浏览

ios - iOS/objectiveC 中的最佳设计模式,用于显示从单个数据源同步的多个可选视图

我正在开发一个应用程序,其中一个视图控制器负责包含三个视图。

  • 该视图中的每一个都有一个somme 测量数据源。
  • 视图是同步的 -> 在一个视图中选择一个点在其他视图中具有相似性。
  • 用户可以选择各种选项以在每个视图中显示(例如 3 个视图但 5 个视图选项。

这是我目前在这种情况下采取的方法:

  • 创建一个组件协议——所有视图都必须符合。
  • 例如,组件是一个 UICollecytionView,其中包含选择的详细信息(在其他组件中进行)。
  • 该组件具有视图属性,并由控制器动态添加到视图控制器的容器视图中。
  • 可见视图控制器由同步管理器同步 - 可见视图由视图控制器注册到该同步管理器。
  • 委托主要在组件中实现 -> 一些事件在组件委托中公开(用户选择等,因此同步管理器可以同步其他视图)。
  • 视图控制器负责从用户选择的测量批次(例如,另一个视图控制器中给定日期的批次)中捕获委托,然后加载所需的数据并触发同步管理器将所选批次提供给每个可见组件。
  • 然后组件负责呈现批次(以及加载/查找新批次的相关点,如果早期批次已选择点)

这种方法正确吗?在视图控制器中拥有每个组件的代码会(并且在第一种方法中确实)会阻碍它的感觉和清晰度!

我也确实阅读了有关 View Controller Containment 的信息(如果我理解正确,这意味着为每个选项创建一个视图控制器并在视图控制器内处理该元素并将它们交换为屏幕上的可见视图)。然后用户选择将触发交换负责具体选择选项的视图控制器,但是最好由父视图控制器进行同步(我是否正确)。

希望我足够清楚......虽然我知道描述是模糊的,但你应该明白主要思想。

重新假设:

  • 什么方法更好?该组件似乎是一个很好的可重用组件,我可以非常动态地添加到其他视图控制器等。
  • 如果有的话,这些方法中的每一种都有哪些可能的陷阱?
0 投票
1 回答
280 浏览

ios - 'NSInternalInconsistencyException',原因:'自定义导航转换 - 不同方向之间没有弹出!'

我正面临通过MFSideMenu包含 UIViewController 的问题。

问题是,在ViewControllers该支持方向上,打开侧面菜单并选择不同的菜单选项(当设备处于横向模式时)会导致应用程序崩溃。此行为在 iOS 6 中完美运行,但现在在 iOS 7 中失败。

这是堆栈跟踪:

感谢您对调试的任何帮助。

P/S:注意控制台日志中“orientation”的拼写错误。我把它拼错了,以防其他人也偶然发现这个问题。

0 投票
1 回答
41 浏览

python - `in`的行为与python列表中的`index`有何不同

令我沮丧的是,我设法在 python 中创建了一个对象列表,使得以下失败:

我向你保证,这里没有诡计:

  1. foo是一个带有自定义__hash__and的对象__eq__,并且没有在其他地方被修改
  2. 两个函数都是幂等的,不修改状态
  3. lst[]是一个没有诅咒的标准蟒蛇
0 投票
2 回答
2613 浏览

ios - 将嵌套在容器视图控制器中的 UINavigationController 添加到 UITabBarController

我有一个UIViewController(红色)设置为 a 的第一个选项卡,UITabBarController如下面的故事板所示。此视图控制器是一个容器视图控制器,并UINavigationController在其内部加载一个contentView(红色视图控制器内的白色矩形)。

故事板

这是我在红色视图控制器中加载导航控制器的代码contentView

根据我对视图控制器包含的了解,这应该可以工作,因为我正在为导航控制器明确设置框架。但是,当有足够的单元格超过容器的高度时,当我向下滚动时tableView,末尾总会有一个栏。tableView我已将tableView's设置backgroundColor橙色,将单元格设置backgroundColor白色,以查看差异。

tableView 末尾的间隙

我如何摆脱结尾处的橙色间隙tableView

(注意:我没有使用自动布局,我需要一个适用于 iOS7iOS6 的解决方案。)

0 投票
1 回答
722 浏览

jsplumb - jsPlumb 多个容器不能一起工作。这是错误吗?

我有以下 HTML

我通过 JS 动态添加可拖动。并使用以下 JS 代码使它们可拖动。

它显示我在正确的容器中拖动。但是当我拖动时,它突然将选定的可拖动对象移动到顶部容器中。当我将它拖到顶部容器之外时,它不允许我这样做。

我尝试将可拖动的位置设置为:相对,绝对。但它不能解决问题。

编辑:如果我使用

它工作正常。但是连接不会与 dvs 一起被拖累。如果我遵循

然后连接与 div 一起移动,但出现上述问题,即 div 自动移动到顶部容器。

0 投票
1 回答
74 浏览

java - How can an object get its key from a HashMap?

Suppose I have a chessboard defined with a HashMap

I declare the Position as

When I am trying to make a class for Field object I encounter a problem: the Field should contain a Position because it is defined by it. Ex.

But the Position object is going to be used for HashMap. How could I avoid this redundancy?

0 投票
2 回答
63 浏览

javascript - J查询中.sortable函数的问题

这是我正在使用的JSfiddle 。

我正在尝试创建两个列表,我可以从中将每个项目移入和移出它们,并且更改将在下面的更新功能/排序状态 div 区域内更新。

我在第 3 行的第一个警报有效,但是当我在第 5 行调用 click 函数时,第 6 行警报不起作用。总的来说,我认为我的代码可能缺少某些内容或分号等不合适。请帮助并留下反馈,谢谢。

0 投票
1 回答
676 浏览

python - python中列表的快速多集包含

我有一个来自表查找的 int 迭代器,需要检查它们的 multiset 是否包含在给定的固定 "multiset"ms中。目前,我ms在开头排序,然后在我的迭代器中对 int 进行排序,并检查(排序列表的)多重集包含,如下所示:

在哪里

  • 通常,我的列表很短(1--20 个元素)
  • 我尝试使用Counter,但其初始化的时间劣势比包含测试的时间优势更糟糕。
  • 我这样做〜10 ^ 6次,所以我应该这样做cython

任何想法或指示都会很好 - 谢谢!(很抱歉先过早点击发帖按钮...)

0 投票
1 回答
945 浏览

draggable - jsPlumb 多容器拖动父级

我有以下 HTML

<div class='wraper'> <div class="demo statemachine-demo1"> <div class="w" id="inperson">IN PERSON <div class="ep"></div> </div> <div class="w" id="rejected"> REJECTED <div class="ep"></div> </div> </div> <div class="demo statemachine-demo1"> <div class="w" id="inperson">IN PERSON <div class="ep"></div> </div> <div class="w" id="rejected"> REJECTED <div class="ep"></div> </div> </div> </div>根据上面的 HTML,包装器 div 包含两个 div 每个 .demo div 包含两个 div 并相互连接 .statemachine-demo1 .inperson div 到 .statemachine-demo2 .inperson(.statemachine-demo1.inperson ----> .statemachine-demo2.inperson) 和 .statemachine-demo1 .reject 到 .statemachine-demo2 .reject(.statemachine-demo1.reject -----> .statemachine-demo2.reject)。

现在,如果我拖动类 w 连接线将连续移动,但我想知道的是,如果我拖动父 div statemachine-demo1 的任何方式,子 div 拒绝和个人类 div 也应该随着连接线连续移动。