问题标签 [cgaffinetransformscale]

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

ios - 在 UIView 动画块内调用 layoutIfNeeded 会导致子视图提前移动

我正在尝试创建一个自定义标注气泡。我有一个动画块设置气泡 UIView 的比例变换:

我要么在 (1) 中以比例 (0, 0) 开始气泡视图,然后像在动画块内的 (2) 中那样动画到 Identity,或者相反,从 (2) 到 (1)。

如果我的[self.view layoutIfNeeded];动画块中没有,从 (1) 到 (2) 可以正常工作,如下所示:

在此处输入图像描述

但是当从 (2) 回到 (1) 没有 时[self.view layoutIfNeeded];,子视图会在动画完成之前跳到左边:

在此处输入图像描述

现在,如果我确实添加了[self.view layoutIfNeeded];带有气泡视图的子视图动画,但有一种延迟:

从(1)到(2):

在此处输入图像描述

或从(2)到(1):

在此处输入图像描述

我已经尝试用中心约束替换所有顶部和前导子视图的约束,例如在使用自动布局时如何调整 CALayer 的锚点?并且还尝试了图层转换解决方案(但是这个解决方案打破了布局约束,说它不能满足所有约束)。

关于如何解决我的动画问题的任何想法?

提前致谢。

更新: 我正在用我调用的实际方法更新问题

呈现和关闭我的自定义标注气泡(暂时忘记展开状态)。

0 投票
2 回答
355 浏览

avfoundation - CGAffineTransform 平移和旋转产生不圆角的变换结果

对于给定的变换计算,

输出将是[-1, 1.2246467991473532e-16, -1.2246467991473532e-16, -1, 1920.0000000000002, 1079.9999999999998]但我希望它是[-1, 0, 0, -1, 1920, 1080]

为什么会出现舍入错误?我应该以不同的方式应用转换以产生四舍五入的结果吗?

0 投票
1 回答
108 浏览

ios - 在 iOS 中缩放视图

我有三个 UIView(A、B、C),其中 A 包含 B 和 C。我希望能够缩放视图 B,方法是使用 UIPinchGestureRecognizer 检测捏合手势,然后使用 CGAffineTransformScale 缩放视图 B。

但是,当我缩放 B 时,它可以缩放,但会扩展到屏幕的原始区域之外 - 我想保持包含 B 的屏幕区域相同,并且只显示它的一小部分,但放大了。

我可以设置一些东西来保持视图的区域相同吗?

0 投票
2 回答
1240 浏览

ios - 缩放一个 UIView,除了它的一个子视图

我以UIView这种方式缩放:

并且视图缩放得很好,但我希望它的一个子视图保持未缩放,即全屏。如何做到这一点?

0 投票
2 回答
614 浏览

ios - 缩放 UIView 时如何在 UIView 周围保持一致的 2px 边框?

我有一个自定义 UIView,可以根据 UISlider 的值进行缩放和旋转。缩放效果很好,很简单:

我的 UIView 有一个 2px 边框:

但是,当我将视图缩放得更大时,边框也会变大。如何保持忽略视图比例的一致边框?

0 投票
1 回答
1710 浏览

ios - iOS CGAffineTransformScale 保持左锚

CGAffineTransformScale用来缩小我的UITableView,它正在正确缩小它,但我似乎无法正确设置锚点。

如果我不设置锚点,它会从中心按比例缩小,但根据我的要求,我需要保持左上角点固定。为此,我使用了这个

但这并没有正确设置锚点。我还没有使用的另一件事AutoLayout

请任何人都可以帮我解决这个问题...?提前致谢..

0 投票
1 回答
61 浏览

ios - 仅在三个方向上缩放滚动视图

我正在制作一个示例项目。我有一个包含多个视图的滚动视图(顶部是一个包含图像的UIImageView框架CGPoint = 0,0)。

我想实现以下功能:

每当我向下滚动时,如果滚动视图的内容偏移量小于 0.0f 并且我继续向下滚动,我想将滚动视图的可见内容向除向上之外的所有方向缩放/缩放。

我目前正在以适当的比例缩放滚动视图。但是,问题在于滚动视图正在向各个方向缩放。我想限制这种缩放只向左、向右和向下(即内容不应该向上移动)。

请建议我如何实现相同的。

提前致谢。

0 投票
1 回答
673 浏览

ios - iOS - CGAffineTransformScale 不会恢复?

基本上我希望最初隐藏按钮,当单击其他按钮时,我想将其转换更改为原点,但它似乎不起作用。

0 投票
1 回答
3135 浏览

ios - CGAffineTransform 比例不从中心缩放 - 导出

我想是什么让我的问题/问题与其他帖子不同的是我不是在缩放视图,而是资产层指令(AVMutableVideoCompositionLayerInstruction)。所以设置锚点、view.center、CG Rect 缩放都不起作用。

除了使用 CGAffineTransformMakeTranslation 移动资产以使其看起来像居中但高度不准确之外,我无法弄清楚如何使其从中心缩放。有没有我失踪的财产?文档和指南不是很有帮助,但也许我错过了一些东西。

代码如下。谢谢大家!!!:)

此外,对于那些正在寻找使用 CGTransforms 导出 avasset 的方法的人,下面的代码是到达那里的所有步骤;当然需要填写诸如 CMTimeRanges 之类的详细信息,但希望这可以帮助某人弄清楚这个令人困惑的事情。

0 投票
5 回答
2642 浏览

ios - 将 CGAffineTransformScale 应用于 UIView 使图层边框也变大

我有一个 UIView,里面有一个 UIImageView。我在 UIVIew 中添加了一个 UIPinchGestureRecognizer 来处理捏合和缩放,并使 UIView 与 UIImageView 一起增长。

我的 UIView 有一个边框。我以这种方式添加了边框:

我遇到的问题是我找不到在保持边框宽度相同的同时使我的 UIView 更大的方法。捏合和缩放时,边框会变粗。

这是我的 UIPinchGestureRecognizer 处理程序:

非常感谢!!

我一直在谷歌搜索很多,发现了这个:

可悲的是不适合我......这是有道理的,但不工作。

我还阅读了有关在后面添加另一个视图并使前视图在位置上有偏移的解决方案,以便显示后视图并且看起来像边框。这不是一个选项,因为我需要我的图像以透明方式查看。

我想重新创建 Aviary 在他们的应用程序中所做的事情。您可以放大和缩小“贴纸”,并且边框始终保持相同大小。