问题标签 [uiview-hierarchy]
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.
iphone - UIButton 在 iOS 6.0 上的 MFMessageComposeController 中为零
我正在尝试打印应用程序可见和隐藏窗口的视图层次结构。这是我在 MFMessageComposeViewController 子类中的一部分代码:
findButtonInView: 方法在当前 UIWindow 中递归搜索 UIButton。
这在使用 iOS4.3 和 iOS 5.1 进行测试时按预期工作(成功找到预期的 UIButton),但不适用于 iOS6。以下是两个测试的视图层次打印结果:
iOS 4.3:
iOS 6.0:
我的问题是如何在 UITextEffectsWindow 中找到所需的 UIButton?
似乎iOS6中的视图层次结构发生了某种变化......
我将不胜感激任何帮助。谢谢!
ios5 - 警告无法恢复先前选择的帧 - 无法以模态方式打开 UITabBarController
我正在尝试以模态方式呈现 tabBarController。我正在尝试通过以下代码来做到这一点:
当我尝试这样做时,我收到以下警告:
warning unable to restore previously selected frame
然后xcode向我展示了一些指向uiview(hierarchy)_makesubtreeperformselector
严重崩溃的汇编语言/堆栈。
我认为问题在于我无法理解我所做的视图层次结构。我得到的是:
有一个视图控制器,可以说abc,它以模态方式表示一个名为tabsManager 的tabbarcontroller。
tabsManager 管理着两个名为 *"int_his"* 和 *"man_his"* 的 viewController。
在int_his中单击按钮时,我需要以模态方式打开另一个名为“summaryGraphManager”的 tabBarController 。
请有人告诉我如何正确呈现 *summaryGraphManager * 模态?谢谢。
cocoa-touch - 在将 UIView 添加到 superview 之前设置它的 alpha
我有两个视图,一个指定的超级视图和一个子视图。子视图的 alpha 值为 0,并且仅被初始化并没有被添加到任何父视图中。在我的子视图配置后,我声明了一个 UIView 动画块。有了这个,我在不到一秒的时间内将子视图的 alpha 更改为 1.0。
在我声明动画后,我将子视图添加到我的超级视图 X。
动画是否有可能不会发生——如果是,为什么?
objective-c - UIViewController 内的 UIView 还是更好的方法?
我对如何正确执行某种操作有疑问。
下图显示了一个 UIViewController,但视图的第二部分是一个自定义 UIView(带有个人资料图片、名称和显示视图按钮的那个)。使用以下代码分配子类 UIView:
问题当然是 UIView 上的按钮不能显示任何视图,因为只有 UIViewController 可以将另一个 ViewController 推送到窗口(对吗?)。
UIView 在应用程序的多个地方使用,需要轻松添加,并且在整个应用程序中具有相同的行为。
在我添加按钮之前效果很好,并且我开始认为我做错了,并且必须有更好的方法来做到这一点(也许将 UIView 更改为其他内容?)。
我在想我应该可以打电话:
然后以某种方式获取 ViewController,这样我就可以将另一个 ViewController 推送到视图层次结构中,但是不行。
有关如何正确执行此操作的任何建议和提示?
更新:我不知道如何从按钮推送另一个 UIViewController。
在 UIView 中按下按钮时,我应该在这个方法中做什么:
如何推送 GPProfileSocialFriendsViewController?
ios - 如何检测哪个视图正在处理我的点击?
在我的视图层次结构底部的某个地方,我正在实现一个 touchesBegan 方法。它会触发除单指点击之外的所有触摸。这使我相信在层次结构中更高的某个地方,一个视图正在拦截/处理单指点击,但我一生都找不到该视图。有没有调试这个的好方法?
iphone - 如何在 iphone 中创建像我的照片应用程序这样的文件夹?
亲爱的朋友们,我想知道有没有可能在 iPhone中创建像MY PHOTO应用程序这样的文件夹?如果可能,我该如何实施?
现在我正在尝试创建。我在我的自定义 UIView 中使用 UIScrollView,例如为设置文件夹图像添加了一个 UIImageView。然后使用 for 循环我正在静态创建并在一列 UIView Down 中一一排列,但他们需要它将在两列中。我该如何实现?
还有我如何动态实现它?即为每个按钮操作一个一个地创建文件夹
ios - 如何在 iOS 中识别混合图层?
我正在触发 iOS 动画以在我的屏幕上移动一些元素,当我这样做时,屏幕底部的一个区域(远离我认为我正在执行操作的位置)会稍微改变阴影。当我在 iPhone 模拟器中打开“显示混合图层”时,很明显在我的动画开始时,一些东西开始覆盖该区域,但我不知道是什么。我添加到屏幕上的视图是一个复合视图,包括一个滚动视图和一个叠加层——其中的某些东西超出了它应该在的范围内,我不知道是什么。模拟器显然知道它是什么——它很高兴为我将它着色为红色作为混合层——但我无法让它告诉我什么图层正在混合,所以我可以修复它。我该怎么做呢?
ETA:如果我在插入的视图上打开 clipsToBounds,我的问题就会消失。但是我仍然想知道在尝试调试时如何识别分层视图。有办法吗?
ios - 从子视图控制器转移到父视图控制器 - iOS
我有一个主要的 Actions View Controller,上面有一个“Review”按钮。查看按钮的功能是:
现在在评论页面上,我有一个按钮。在该按钮的操作上,我想切换回父视图控制器。应该显示它的视图。我尝试过以下代码,它要么暂停要么崩溃应用程序。
我什至尝试过:
我也阅读了与此问题相关的其他帖子,但找不到令人满意的答案。请帮忙!
ios - didReceiveMemoryWarning 和重建实例变量相等检查
我正在浏览我的 iOS 应用程序,使用“模拟内存警告”作为我的正义之锤,这会导致一些意想不到的问题(自然)。但这是让我难过的一个问题:对象似乎不再相等。
假设我的视图控制器(我们将命名它VCBob
)有……</p>
- 两个单独的自定义
UIViews
子视图(让我们命名这些视图viewA
和viewB
)- 每个都有自己
UICollectionView
暴露的属性collectionView
(这些UICollectionViews
用作VCBob
他们的delegates
)
- 每个都有自己
- 一个
UIButton
,当按下时,将其他一些视图控制器(否则无关紧要)推到堆栈上
所以我点击了,UIButton
然后出现了无关紧要的视图控制器。我触发了“模拟内存警告”选项,并被VCBob
编程为在 中删除viewA
和viewB
内部-didReceiveMemoryWarning
,因为它们被完全重新创建并重新插入到视图层次结构中viewWillAppear
(只要它们nil
在 时viewWillAppear
)。这是该实现VCBob
:
然后我点击导航栏中的后退按钮,然后VCBob
重新开始游戏。这两个自定义UIViews
仍然存在,并且它们各自UICollectionViews
都加载了内容。当我点击UICollectionViewCells
任一集合视图中的一个时,该-collectionView:didSelectItemAtIndexPath:
方法被调用VCBob
;到目前为止,一切都很好。该实现看起来像这样。
问题是什么都没有发生——没有任何记录。这两个if
条件都评估为假。这是为什么?我似乎觉得我可能在做坏事didReceiveMemoryWarning
。我不应该在那里处理视图吗?