问题标签 [layoutsubviews]

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

ios - 调用viewDidLayoutSubviews后如何触发tableView的heightForRowAtIndexPath?

tableViewCell包含 viewController,它的高度是在 tableView 完成视图布局后计算的。所以我需要通过调用方法触发tableView再次请求行高。heightForRowAtIndexPath

我试过setNeedsLayout了,不行,系统不会调用heightForRowAtIndexPath方法。

reloadData或者reloadRowsAtIndexPaths不是很好的选择,因为它会重新加载所有的单元格,并且所有的viewControllers都内置到单元格中,当viewController完成布局过程并被viewDidLayoutSubviews调用时,reloadData 会再次调用,所以它是一个无限循环。

我正在测试tableView.beginUpdates() tableView.endUpdates()空更新操作。有时它会触发heightForRowAtIndexPath,有时不会。

0 投票
1 回答
81 浏览

ios - layoutSubviews 混乱——操作 TMQuiltView

我正在尝试这个自定义类 — TMQuiltView — <a href="https://github.com/1000Memories/TMQuiltView" rel="nofollow">https://github.com/1000Memories/TMQuiltView。通常,我在 Storyboard 中布局界面,这不是问题。由于这是一个自定义类,看起来好像我必须以编程方式这样做。

我会发布他们演示中的截图,但我没有足够的声誉。相反,我将展示 -(void) layoutSubviews 方法

我的目标是让 titleLabel 出现在 photoView 下方,但我不希望它具有确定的大小(即,如果我是故事板,我会使用自动布局)。所以,在titleLabel的方法中,我尝试计算标签的高度:

但这就是我陷入死胡同的地方。我不能在制作 CGRect 时使用它(CGPoint 不兼容)。我在某处为图像制作 CGRect 吗?我如何定义它与 self.bounds 的关系?

0 投票
1 回答
767 浏览

ios - 故事板中的自定义 UIView 不显示子视图

我创建了一个自定义 UIView 来显示 UIActivityIndi​​catorView 和一条消息。想法是在我的应用程序中重用它以保持一致性。下面是代码:

为了尝试这一点,我在情节提要中的一个视图中添加了一个 UIView,并将该视图的类设置为 CDActivityIndi​​cator。当我从相应的视图控制器调用 begin() 时,CDActivityIndi​​cator 显示为具有预期背景颜色的空视图。但是,活动指示器不显示。所有方法都按预期调用。

知道我可能会错过什么吗?谢谢!

0 投票
1 回答
399 浏览

ios - 缩放视图及其所有内容

我想知道是否有办法缩放 UIView 及其所有子视图。

当我说缩放时,我不只是在谈论框架,我不想缩放所有东西,所以字体也是如此。

目前我正在手动进行:

但是 setScale 方法必须在我所有的视图中定义,这很乏味。

当我不想缩放一些用 UIWebView 显示的 html 文本时,我遇到了一些问题,这个内容不能那么容易缩放......

我也尝试过另一种方法:当我的视图被缩放时,它不接受 userInteraction 所以我尝试拍摄快照,图像更容易缩放。但这对我的 iphone 内存来说太重了,尤其是当我不想缩放的视图是数百个 uicollectionviewCells 时。

有没有更快的方法来做到这一点?

0 投票
1 回答
3082 浏览

ios - 为什么需要覆盖 layoutSubviews

在“何时调用 layoutSubviews? ”这个问题中列出了几个案例:

  1. 父视图被调整大小
  2. 设备旋转
  3. 还有吗?

如果不需要处理,对于UITableView,我们可以通过创建一个自定义的UIView. 最简单的方法是创建UIViewby initWithFrame:,然后不再需要重新布局。

因此,在我看来,我们不需要覆盖layoutSubviews等。但是有一些意见坚持覆盖它。

不使用它的原因:

  1. KISS(保持简单和愚蠢)
  2. 无需重新布局
  3. 滚动时重新布局有成本

我的问题是为这个案例获得更多建议。谢谢。

0 投票
2 回答
2806 浏览

ios - UITableView:单击按钮时如何动态更改单元格高度?

我有一个 UITableView,其中每个单元格都有一个按钮。
单击按钮时,单元格的高度将更改。
当然,整个tableview的高度会根据它而改变。
在长时间冲浪时我找不到路。实现这一目标的优雅解决方案是什么?

0 投票
1 回答
43 浏览

ios - layoutSubviews 中的奇数枚举内存问题

在uitableviewcell的layoutSubviews中,有类似的逻辑

enum_instance 从某个地方更改,例如在一个计时器中,然后 setNeedLayout 触发 layoutSubviews

但是 layoutSubviews 中的 enum_instance 不会更新。这是错误吗?还是我做错了什么?

谢谢,

0 投票
0 回答
840 浏览

ios - 在 layoutSubviews iOS 8 中更改 UITableViewCell 框架

我正在尝试在 iOS FaceBook App 中获得 UITableViewCell 的类似效果

所以我子类化了一个 UITableViewCell 并在layoutSubviews

我使用此代码来调整单元格框架的大小

对于单元格的圆角矩形

并且它可以正常工作,但是一旦突出显示任何单元格,每次突出显示单元格时都会调整单元格的大小我认为这是因为layoutSubviews多次调用所以它每次都应用效果

高亮前

有没有什么办法解决这一问题 ?

0 投票
1 回答
496 浏览

uiview - UIView 窗口在可见时为零

我有一个 UIView,当我尝试更新它的子视图 alphas 和框架时,我无法成功。我检查了 viewswindow属性,发现它为零。我该怎么做才能修复它?

我已经尝试了所有的: -layoutSubviews, -layoutSublayers, -setNeedsDisplay, -bringSubviewToFront:等。不工作。

0 投票
1 回答
1280 浏览

swift - 为什么 layoutIfNeeded() 允许在更新约束时执行动画?

我有两种状态UIView

在此处输入图像描述 在此处输入图像描述

我在他们之间使用@IBactionfor动画button

动画仅在我添加附加行时才起作用:

但是当我删除那条线时,我UIView的更新但没有任何动画,它会立即发生。

为什么这条线会产生如此大的不同?它是如何工作的?