问题标签 [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.

0 投票
1 回答
178 浏览

windows - 用于 3 个不同 mfc 应用程序的容器 GUI

我目前有 3 个非常相似但略有不同的 mfc 应用程序,它们通常会在 Windows 环境中作为其工作流程和使用的一部分同时打开。我想将它们保留为 3 个独立的应用程序,但以某种方式将它们组合在一起,在一个 UI 容器下为用户提供更清晰的信息。

到目前为止,我已经考虑使用命名管道将数据从两个应用程序发送到第三个应用程序,后者单独负责绘制 GUI(可能在最高 GUI 级别有 3 个不同的选项卡,每个应用程序一个)。我从 SergeWautier 的这篇文章的回答中得到了这个想法。在研究了这样做的可能性之后,实现这一目标似乎需要做很多工作。

有没有其他(可能更简单)的方式来实现类似的目标?

0 投票
1 回答
449 浏览

swift - 材料迅速:带有搜索栏和 TabBar 的 UIView 迅速移出视图 3

我在使用 CosmicMind Swift Material 框架为 swift ( https://github.com/CosmicMind/Material ) 创建的视图上有 SearchBar 和 TabBar。以下是我用于设置视图的代码:

所以基本上,我有标签栏,它有搜索栏,而搜索栏又有一个视图。我为视图创建了一个 xib,以便我可以使用界面构建器拖放和定位东西。我遇到的问题是,标签栏覆盖了我的一些标签。请看下面的截图 我的 UIView 的屏幕截图

当我运行我的应用程序时,我得到如下所示的视图。如您所见,标签 2 不在视野范围内,我已经尝试了所有可能的方法,但无法弄清楚并使视图正确地适合搜索栏和标签栏

运行我的应用程序后的图像

任何帮助将不胜感激

我在 xcode 中的 XIB 视图的屏幕截图:xib 截图

0 投票
1 回答
766 浏览

ios - wkwebview ios 10在重新创建webview后停止使用localfileurl加载文件

我对 wkwebview 和 ios 10.3 和 swift 3 有一个奇怪的行为。

我正在使用 wkwebview 来显示本地 html 文件(在应用程序支持下)。首次启动时一切正常,本地网站(包括 js 和 css)运行良好。但是,如果我从 Internet 获取内容更新(这涉及删除 html 目录和提取新文件),webview 将不会加载文件。如果我只是尝试重用现有的 webview:

甚至通过 javascript 调用window.location.href='\(self.landingPage)',我在调试控制台中收到了相当奇怪的错误消息:

尺寸创建曲面失败:(0 0) 和格式:(0)

如果我尝试使用以下方法重新初始化 wkwebview:

` ...

没有任何反应 - 显示的 html 没有变化,没有错误,没有冻结 - 本地网站照常工作(涉及 loadFileURL 调用的函数除外 - 但此代码在 ios 9.3 中有效,我确信它在 ios 10 中有效。

我还知道 ios 10.3 beta 中存在 wkwebview 问题和带有空格的文件路径的错误 - 但我也使用 Documents 目录对此进行了测试,结果相同。

但过了一会儿,我得到了这个日志输出:

无法向服务 com.apple.WebKit.Networking 发出信号:113:找不到指定的服务

这里的答案表明,它可能与未将 webview 正确添加为子视图有关。但我看不出我是否在将 webview 添加到子视图时做错了......

更新

视图层次结构的进一步调试结果是“wkwebview 的位置不明确”。

结果po [[UIWindow keyWindow] _autolayoutTrace]如下:

但现在我有更多的问题:

  • 这种奇怪的 WKWebView 行为的原因可能是“模糊的布局”吗?
  • 如果是这样,我该如何解决这种歧义?

更新 2:

多亏了这个答案,我可以解决模棱两可的布局,并且视图层次结构调试器很高兴-但不幸的是,这并没有解决 webview 的问题-它仍然没有响应 loadFileURL 请求!

0 投票
1 回答
401 浏览

uitableview - “适合”(也称为“sizeToFit”)其动态单元格内容大小的 TableView。然后嵌套在同样“大小适合”的父 UIView 中

我不确定我是否以最优化的方式处理这个问题。

(1)首先,我想要一个具有任意数量的单元格的tableView,其动态单元格高度不同(基于来自Web服务器的内容,无法提前计算)。但我希望 tableView 的高度只增长到适合所有单元格的内容(不是更高或更短)。此表格视图将不可滚动(它将是父级的父级视图)。

(2) 然后,我希望 tableView 嵌套在父 UIView 中。

我大部分时间都在(1)工作,虽然我不知道我的方法是最优的还是骇人听闻的。但我绝对没有(2)工作:(

(下图)Turqoise 视图是表视图的父视图。单元格(红色)和表格大小(白色)是正确的,但父视图比应有的短。

屏幕截图 2017-07-07 在 9.08.45 PM.png

更改代码后,我遇到了相反的问题。父高度增长到大约正确的高度,但 tableView 被砍掉了。

屏幕截图 2017-07-07 在 9.10.06 PM.png

这是代码更改:

屏幕截图 2017-07-07 在 9.22.31 PM.png

查看层次结构:

屏幕截图 2017-07-07 在 9.11.06 PM.png

如果我不尝试将 tableView 放在父 UIView 中,则表格“大小适合”恰到好处:

屏幕截图 2017-07-08 在 10.02.57 AM.png

完整的代码库在这里:https ://github.com/jayliew/UITableViewSizeToFitDynamicHeightCells/tree/master/TableViewFitContent

我不确定我需要知道什么,我不知道,但我怀疑这是围绕完全理解视图的布局方式、AutoLayout 如何发挥作用以及 viewController 生命周期(如 viewWillAppear、viewWillLayoutSubviews 等)而展开的。(每个阶段如何影响视图的布局,有或没有自动布局)。我不只是想解决这个问题,而是更全面地了解架构,如果有人能指出我正确的方向,我将不胜感激。

0 投票
0 回答
318 浏览

ios - 以编程方式自定义视图 AddSubview,未显示 UIElements...

我这样做是为了从 Storyboard 添加一个子视图,它是来自具有自己的类的 ViewController 的子视图。(TomStatusbarController) ...它在 Storyboard 中设置为 CustomClass。我也使用 Layoutformats 进行约束。这工作正常,但状态栏只是红色,我看不到 UIElements。我收到了很多关于约束警告的信息,但它以前工作过,当我把它作为一个 IBOutlet 时,但我现在必须改变它。

那么为什么我什么也没看到,期待我的背景色?

汤姆

0 投票
1 回答
152 浏览

ios - 如何在父视图上显示不断增长的子视图

我的看法如下

父视图

彩色瓷砖基本上是视图。当我长按平铺视图时,我正在创建长按的平铺副本。此外,当它被长按时,应该有一个如下图所示的视图。

在此处输入图像描述

下降区域应从底部向上或从屏幕底部的昆虫生长。

当长按平铺视图时,我正在创建视图的副本,我能够成功地制作副本并在屏幕上拖动,但我被困在创建这个放置区域及其动画。

有人可以指导我如何实现这个....

提前致谢...

0 投票
0 回答
310 浏览

ios - 尝试在视图不在窗口层次结构中的 <> 上呈现 <>

我在 AppDelegate 中使用此代码,在某些情况下它会打开登录屏幕或启动屏幕。像下面

当它首先打开启动屏幕时:从启动屏幕进入主菜单屏幕,如下所示

它打开得很好。但是,当从应用程序委托它首先打开登录屏幕并从登录屏幕上单击按钮时,它会移动到启动画面,然后到主菜单,它会一直发出这个警告,

登录界面代码:

所以viewControllers的构造是这样的:

我知道有很多解决方案可以解决这个问题,我尝试了很多可用的解决方案,但都没有奏效。

0 投票
2 回答
1226 浏览

objective-c - 是否可以自定义 CNContactPickerViewController?

我正在打开一个 CNContactPickerViewController 以在应用程序中使用,但我想改变它呈现的方式以满足我的应用程序需求,最好不要自己滚动并做大量的重新发明轮子。这就是我使用Objective-C打开它的方式......

当它打开时,它目前看起来像这样:

定制前

但是,由于 SDK 中的错误,无法在这种视图上搜索人员,因为您无法从搜索结果中进行选择。我将为此提交一个错误,但与此同时,我首先要隐藏搜索栏。我发现了一些关于删除 SearchBar 的旧问题,但它们与 ABPeoplePickerNavigationController 相关,与 CNContacts 无关。我也不希望使用组,如果我可以删除该按钮并将取消按钮移到左侧,那就太好了,并且会使我的应用程序中的选择界面看起来更清晰。这就是我希望它看起来的样子:

定制后

谁能告诉我这是否可能,并指出我正确的方向?我有选择后接收联系人数组的委托方法,我的问题是它在应用程序中的外观。

提前致谢!

等离子体

0 投票
0 回答
163 浏览

ios - 异常收集视图层次信息 - [UITextView _firstBaselineOffsetFromTop] 仅在使用自动布局时有效

当我尝试在 Xcode 9 中调试视图层次结构时,我在控制台输出中收到此警告。

异常收集视图层次信息 - [UITextView _firstBaselineOffsetFromTop] 仅在使用自动布局时有效`

我不确定这意味着什么,也看不到视图层次结构。

0 投票
2 回答
777 浏览

uiview - uistackview ios内imageview上的重叠标签

我想在 uistackview 内重叠两个视图(一个视图在彼此之上)。我的目标是在他的图像上显示用户名的首字母。图像大小是恒定的,初始标签应位于图像视图的中心

我有一个 uitableviewcell,上面还组织了其他标签和按钮

这是视图层次结构。

查看层次结构